我试过了
node.cloneNode(true); // deep copy
它似乎没有复制我使用node.addEventListener("click", someFunc);
添加的事件侦听器。
我们使用Dojo库。
发布于 2019-05-28 22:45:18
这是@JeromeJ在评论中所描述的。使用下面的HTML代码创建初始元素。
<DIV ONCLICK="doSomething(this)">touch me</DIV>
当您克隆此元素时,结果将具有相同的处理程序," this“将指向克隆的元素。
如果ONCLICK处理程序可以很容易地添加到JavaScript中,那就太好了。这种方法意味着您必须用HTML编写一些代码。
发布于 2022-01-28 12:45:18
我知道我来晚了,但这是一个对我有效的解决方案:
const originalButtons = original.querySelectorAll<HTMLElement>('button');
const cloneButtons = clone.querySelectorAll<HTMLElement>('button');
originalButtons.forEach((originalButton: HTMLElement, index: number) => {
cloneButtons[index].after(originalButton);
cloneButtons[index].remove();
});
https://stackoverflow.com/questions/15408394
复制相似问题