我有一个页面使用了jquery-ui-dialog。每次打开对话框时,页面内容都会通过ajax加载。然后使用jquery的"on()"绑定一些事件。 当对话框关闭时,它将清空其内容。
问题是,在$.empty()之前,我需要解除".ajax-content"上的事件绑定吗?
编辑: 关注点1. 这种方式是否会降低JS的性能?如果我这样清空数百个节点。
关注点2. 删除元素是否也会从内存中删除事件(或者从jquery的执行/评估链中)?
目前我没有对它们做任何处理。 如果多次打开/关闭对话框而不进行页面刷新,会导致任何问题吗?
代码看起来像这样:
<div id="jquery-dialog" class="container">
<div class="ajax-content">
some buttons....
</div>
</div>
------after each ajax load------------
$(".ajax-content").on("click", ".button", function(event) {
//handles the click
});
------on dialog close------------
$("#jquery-dialog").empty();