如何使用on()复制jQuery live()stopPropagation覆盖

时间:2012-04-10 21:36:38

标签: jquery

我知道这是一个hackish问题,但基本上我想利用live()中的一个漏洞,但不希望我的代码因使用它而过时。

以下是我的情况:

我在Wordpress中使用Aloha编辑器。我想要做的是在编辑器处于活动状态并单击图像时在图像上启动一些额外的功能。

问题在于Aloha会阻止点击图像上包含链接的点击。通过使用live()我可以覆盖它,就好像我使用on()它服从停止传播。我不想使用已弃用的代码,所以有人知道我怎么做on()也忽略了这个停止传播?

我认为live()

的jQ笔记中有一条线索
  

在事件处理程序中调用event.stopPropagation()对于停止附加在文档中较低位置的事件处理程序是无效的;该事件已经传播到文件。

所以我认为我需要对on()做同样的事情,但是无法解决如何做到这一点。我想我应该对Aloha进行一些改动,但是它太大了,只是有点吓人。

1 个答案:

答案 0 :(得分:0)

这将覆盖event.stopPropagation()document.querySelector('#adv_search_i').addEventListener('click', function(e){ //code });