EventListener 不适用于克隆 [重复]

Posted

技术标签:

【中文标题】EventListener 不适用于克隆 [重复]【英文标题】:EventListener will not work on clones [duplicate] 【发布时间】:2015-11-26 15:55:30 【问题描述】:

http://jsfiddle.net/1wqdmo4o/

var whichSelected = document.querySelectorAll(".selected");

for(var i = 0; i < whichSelected.length; i++) 

    var clone = whichSelected[i].cloneNode(false);
    clone.addEventListener("click", function() createOutline(clone));
    document.body.appendChild(clone);


我不知道为什么事件监听器不能在克隆上工作。任何想法表示赞赏!

【问题讨论】:

if(selected) 中的selected 是什么?您没有关闭您的 for-loopif 但是我添加了一个新的事件监听器。 @DanielAbella 所以你是,我很抱歉我错过了。 @DanielAbella 您能否创建一个 short 示例来重现您的问题,并定义“将不起作用”。 您设置了 zIndex = -1,因此您的克隆位于身体下方。你不能点击它。 【参考方案1】:

您将复制节点的z-index 设置为-1,所以点击时,您点击body

另外,id 与复制的节点相同,您可能需要更改它。

【讨论】:

谢谢!非常感谢,你是传奇! @DanielAbella 如果有效,请接受答案.. Roman Granovsky 几乎在同一时间得出了同样的结论,在他的评论中给他一些信任:)

以上是关于EventListener 不适用于克隆 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

Droppable 不适用于克隆元素

带有 ssh 的 Git 克隆适用于 Linux,但不适用于 Windows PowerShell

Jquery 验证不适用于 Document.ready()

如何为 JavaScript 生成的所有 div 放置一个 EventListener

为啥相等检查不适用于数组[重复]

notifyDataSetChange 不适用于 RecyclerView [重复]