5

我在 div 中有一个按钮来隐藏该 div,我想将 div 传递给处理程序。这是我当前的代码:

$('#hidden-div').on('click', '#hide-btn', { element : $('#hidden-div') }, hideElement);

有什么办法可以避免重新选择容器?像这样的东西会很好:

$('#hidden-div').on('click', '#hide-btn', { element : $(this) }, hideElement);
4

1 回答 1

6

event.delegateTarget持有一个 DOM 元素引用。

$('#hidden-div').on('click', '#hide-btn', hideElement);

function hideElement(e) {
    $(e.delegateTarget)//do stuff
}

您仍然必须将其包装在 jQuery 对象中,但从 DOM 元素引用创建 jQuery 对象不会查询 DOM。

于 2013-02-02T14:38:12.890 回答