我有一个带有"点击"的按钮。使用jQuery bind()
在其上定义的事件侦听器。事件监听器工作正常,直到我(以编程方式)在父元素上执行display:none
(有效地隐藏父元素和按钮)。当我取消隐藏父元素(display:block
)时,该按钮不再起作用。
示例:假设我使用以下事件侦听器获得以下HTML标记:
$( ".my-button" ).bind( "click", myFunction );
<div class="container">
<div class="my-button">Button</div>
</div>
如果我,使用另一个jQuery函数,请执行
$(".container").css('display', 'none');
事件监听器消失。这种行为有望吗?我需要在每个display:none
之后重新绑定事件监听器吗?
答案 0 :(得分:1)
$(".container").css('display', 'none');
不会解除绑定事件,它会隐藏.container div及其子节点。但是你打电话给$(“。容器”)。css('display','block'); 再次,事件仍在那里,你不必再绑定它。希望这个帮助