Node.isEqualNode()
方法可以判断两个节点是否相等。当两个节点的类型相同,定义特征(defining characteristics)相同(对元素来说,即 id,孩子节点的数量等等),属性一致等,这两个节点就是相等的。一些具体的数据指出:多数时候的比较是根据节点的类型来的。
语法
var isEqualNode = node.isEqualNode(otherNode);
- otherNode: 比较是否相等的节点.
示例
在本例中,我们创建了三个 <div>
块。第一个和第三个 div 都拥有相同的内容和属性,第二个则不一样。然后我们运行 JavaScript ,使用 isEqualNode()
来比较这几个节点。
HTML
<div>This is the first element.</div> <div>This is the second element.</div> <div>This is the first element.</div> <p id="output"></div>
JavaScript
let output = document.getElementById("output"); let divList = document.getElementsByTagName("div"); output.innerHTML += "div 0 equals div 0: " + divList[0].isEqualNode(divList[0]) + "<br/>"; output.innerHTML += "div 0 equals div 1: " + divList[0].isEqualNode(divList[1]) + "<br/>"; output.innerHTML += "div 0 equals div 2: " + divList[0].isEqualNode(divList[2]) + "<br/>";
结果
规范
Specification | Status | Comment |
---|---|---|
DOM Node.isEqualNode |
Living Standard |
浏览器支持
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | (Yes) | 3.0 (1.9) | 9.0 | (Yes) | (Yes) |
Feature | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | ? | ? | (Yes) |