Est-il possible de vérifier si deux éléments DOM sont égaux?

Trouver un élément par position et la position d’un élément dans Javascript n’est pas un problème. Mais existe-t-il un moyen général de les comparer?

La seule façon dont je pouvais penser est de comparer les identifiants ou les noms de classe, mais tous les éléments n’ont pas d’identifiant ou de nom de classe.

Si vous souhaitez comparer deux pointeurs d’élément pour être le même élément, utilisez simplement l’opérateur de comparaison. Cela peut être facilement prouvé car

document.body === document.body 

Par exemple, si j’avais en quelque sorte des références à deux éléments, je ne savais pas:

 if (element1 === element2) ... 

Dans les navigateurs modernes, il existe deux méthodes pour comparer les nœuds.

 var a = document.createElement('div'); var b = document.createElement('div'); b.isEqualNode(a); // true 

mais

 b.isSameNode(a); //false 

Et comme pour IE, ses éléments DOM ont un atsortingbut non stanard, uniqueID . Mais je ne peux pas imaginer que cela puisse être utile dans ce cas, car oui, vous pouvez réellement comparer deux pointeurs.