js判断一个dom中是否包含另一个dom的方法
首先,比较原始(蠢)的方法
function isChildOf(child, parent) { if(child && parent) { let parentNode = child.parentNode; while(parentNode) { if(parent === parentNode) { return true; } parentNode = parentNode.parentNode; } } return false; }
这里 while 中判断其实在实际情况我们应该换成我们要搜寻的上限的 dom,例如 while(parentNode === document.body) 即可。
当然,能省一行代码绝不多写一个字母才是我们这群懒人所需求的。
parent.contains(child) // true | false
返回一个布尔值,判断当前 parent 下面是否包含 child,包含关系为开区间(及 parent === child 时也成立)。
如果你发现你的学习缺乏动力了,那么你只需要在这里调出这篇博客的一大堆毛病并对作者嗤之以鼻,不断抨击作者直到作者的修改让你满意为止,那么你的动力就自然而来了!

浙公网安备 33010602011771号