2012-04-02 91 views
4

我正在制作Chrome扩展程序,为我的好友和个人使用添加javascript加密到Gmail。除了当我尝试通过执行$('#elmId').clone(true)来克隆已在Gmail界面中的按钮时,我大部分都可以工作,但它不克隆事件侦听器。另外,$('#elmId').data('events')什么也没有。我知道该按钮具有多个事件侦听器,因为当我检查元素时,开发人员工具显示它在“事件侦听器”选项卡下具有单击,鼠标悬停等(请参阅http://i.stack.imgur.com/9KnIW.png & http://i.imgur.com/1sszQ.png)。这甚至有可能吗?我做了很多搜索,没有任何东西。任何想法如何做到这一点,或者如果它甚至可能?如何克隆元素并保留事件侦听器?

回答

-1

即使克隆事件侦听器在技术上是可行的,但这并不意味着它是有意义的。侦听器可能在这种情况下,onclick处理移除元素x知道该元素,使用相同的封闭不同的元素上行不通封闭...例如

x.onclick = function(){document.body.removeChild(x);} 

,但如果你复制元素,点击复制的处理程序仍然会关闭原件。