Javascript 如何使element.querySelector()包含根元素?
我处于一种独特的情况下,需要Javascript 如何使element.querySelector()包含根元素?,javascript,Javascript,我处于一种独特的情况下,需要元素。querySelector(selector)对根元素本身进行测试,如果匹配,则返回它 你会怎么做 请注意,element.parentNode.querySelector(选择器)对我不起作用,因为它会与元素的同级发生冲突。您可以这样做 let matched = element.matches(selector) && element || element.querySelector(selector); 首先测试元素,考虑到.queryS
元素。querySelector(selector)
对根元素本身进行测试,如果匹配,则返回它
你会怎么做
请注意,element.parentNode.querySelector(选择器)
对我不起作用,因为它会与元素的同级发生冲突。您可以这样做
let matched = element.matches(selector) && element || element.querySelector(selector);
首先测试元素,考虑到.querySelector()的行为,这可能是有意义的。我不知道匹配项
。我认为这个答案比所提到的问题的公认答案更优雅(因为这个问题被标记为重复)。@BartHofland。不管它值多少钱,如果波蒂在那里也加上这个答案,我会投赞成票。请点击我:)@Danielbowskypopeski链接副本的问题是它涉及到.queryselectoral()
,所以它会有点混乱。@Teemu.closest()
上升。@Teemu但是如果.querySelector()
找到了匹配项,那么从那一点开始.closest()
如果domapi中的最接近的()
与jQuery类似,我想会返回找到的元素本身吗。