在jquery中对dom进行多次实时绑定

时间:2013-02-26 19:27:56

标签: javascript jquery

假设dom元素我有超过2 live个绑定(或delegate就此而言)。 (一个或多个可以来自我使用的jquery插件),哪一个得到优先选择。

$(selector).live('click', function(e) {
  alert(1);
});

$(selector).live('click', function(e) {
  alert(2);
  e.stopPropagation();
  alert(3);
});

然后有人点击了selector,就会显示所有3个提醒。

有人可以解释一下吗?

PS:基本问题是当其他地方有活动绑定(读取文件)时,它们会被覆盖,还是会被执行?

2 个答案:

答案 0 :(得分:0)

除非你取消绑定以前的绑定,否则它只会添加一个新的事件监听器并且它们都会被执行(除非停止执行)。

答案 1 :(得分:0)

它们都按顺序执行。 你可以通过调用event.stopPropagation()来停止随后调用的事件处理程序。(显然不是!)奇怪的是,如果你调用$(selector).off('click')它将删除附加到的每一个事件处理程序.live('click').live实际上已被弃用,建议您不要使用.on

Source