首页 > 代码库 > contains方法
contains方法
contains()方法:
contains()方法检查一个节点是不是另一个节点的后代。如body是html的后代,那么docuement.documentElement.contains(document.dody)就会返回true;在DOM3中有个函数也可以实现这个功能,或者说更全面,那就是compareDocumentPosition这个函数,它返回一个码,我们可以用它与16作按位与运算,再强制转换成布尔型的。
下面是一个兼容通用的contains方法。
function contains(refNode, otherNode) { if (typeof refNode.contains == "function" && (!client.engine.webkit || client.engine.webkit >= 522)) { return refNode.contains(otherNode); } else if (typeof refNode.compareDocumentPosition == "function") { return !!(refNode.compareDocumentPosition(otherNode) & 16); } else { var node = otherNode.parentNode; do { if (node === refNode) { return true; } else { node = node.parentNode; } } while (node !== null); return false; }}
contains方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。