如何检查元素是否是 html/js 的克隆

问题描述 投票:0回答:1

如果我有一个元素的克隆和该元素的真实版本,我如何检查其中一个是真实版本还是克隆?下面的例子:
HTML

<div id = "example">yay! I'm a random element</div>

JS

let real = document.getElementById("example");
let clone = real.cloneNode(true);
// It's obvious that the "real" variable is the real one,
// and "clone" is the clone, but I just need a way to check.
if (clone.methodToCheckIfItsAClone) {
    alert("clone");
} else {
    alert("not clone");
}

有没有一种方法或至少有任何方法可以让我检查该元素是否是克隆?

javascript html clonenode
1个回答
0
投票

您可以尝试在加载所有 JS 之前保存 DOM 源代码:

let generatedSource = new XMLSerializer().serializeToString(document);

然后,使用 JQuery 从源中找到元素:

let oldSource = $(generatedSource);
let elementOld = $('#example', oldSource);
let elementNow = document.getElementById('example')


if (founded && foundedNow){
    console.log('element is original: ', elementNow)
} else {
    console.log('element is clone: ', elementNow)
}
© www.soinside.com 2019 - 2024. All rights reserved.