在克隆节点上添加事件处理程序

时间:2015-11-24 17:37:37

标签: javascript

我有一个节点:<div id = "box1" class = "box center green size200"></div>

我有这个事件处理程序:

document.body.addEventListener("click", function(event) {

figureObject.createOutline(event.target);

});

我在一个名为createOutline的figureObject中也有一个函数,它看起来像这样:( ifOutline是对象中的一个变量,如果选中或未选中(概述),它会跟踪。

if(this.ifOutlined == false) { 

elem.classList.add('selected');

this.ifOutlined = true;

} else if(this.ifOutlined == true) {

elem.classList.remove('selected');

this.ifOutlined = false;

}

然后我有一个看起来像这样的css选择器:

.selected {border: 2px solid black;}

我使用以下方法复制box1元素(屏幕上的原始元素):

var clone = box1.cloneNode();
var parent = clone.parentNode;
parent.appendChild(clone);

事件处理程序在屏幕上的第一个图形(绿色方块)上正常工作。但是复制后创建的克隆不会响应事件处理程序,为什么会这样?

0 个答案:

没有答案