JavaScript-Element.closest未设置样式

JavaScript-Element.closest未设置样式,javascript,html,dom,Javascript,Html,Dom,我一直在浏览JavaScript上的MDN文档,遇到了元素.closest属性。这仍然只是一个实验性质,但了解如何使用它很重要 这是说明书上说的 方法返回当前元素(或当前元素本身)的最近祖先,该祖先与参数中给定的选择器匹配。如果没有这样的祖先,它将返回null var PAR =文档.GETelEnMyBID('MY-ID); 最接近的(“H2”)。背景=“黄色”; 标题 这是一个段落 正如您所说,此方法返回最近的祖先,具体取决于您输入的选择器。在您的例子中,h2不是#my id的祖先,

我一直在浏览JavaScript上的MDN文档,遇到了
元素.closest
属性。这仍然只是一个实验性质,但了解如何使用它很重要

这是说明书上说的

方法返回当前元素(或当前元素本身)的最近祖先,该祖先与参数中给定的选择器匹配。如果没有这样的祖先,它将返回null

<代码> var PAR =文档.GETelEnMyBID('MY-ID); 最接近的(“H2”)。背景=“黄色”;<代码>

标题
这是一个段落


正如您所说,此方法返回最近的祖先,具体取决于您输入的
选择器。在您的例子中,
h2
不是
#my id
的祖先,并且它也不能返回自身,因为它们不是相同的类型,因此结果为null。如果您将
p#my id
更改为
h2#my id
,它将工作:

它在本例中起作用:

<代码> var PAR =文档.GETelEnMyBID('MY-ID); 最接近的(“H2”)。背景=“黄色”;//返回本身 最接近的(“第一”)。样式=“红色”;//更改祖先的颜色

标题
这是一段

正如您所说,此方法返回最近的祖先,具体取决于您输入的
选择器。在您的例子中,
h2
不是
#my id
的祖先,并且它也不能返回自身,因为它们不是相同的类型,因此结果为null。如果您将
p#my id
更改为
h2#my id
,它将工作:

它在本例中起作用:

<代码> var PAR =文档.GETelEnMyBID('MY-ID); 最接近的(“H2”)。背景=“黄色”;//返回本身 最接近的(“第一”)。样式=“红色”;//更改祖先的颜色

标题
这是一段

我一直认为叔父是祖先。要访问标题,他们可以使用
叔叔选择器

你用
#最近的
找到你的祖父,然后用
以前的元素兄弟姐妹
找到他的哥哥

<代码> var PAR =文档.GETelEnMyBID('MY-ID); 最接近的(“第二”)。代码>

标题
这是一个段落


我一直认为叔父是祖先。要访问标题,他们可以使用
叔叔选择器

你用
#最近的
找到你的祖父,然后用
以前的元素兄弟姐妹
找到他的哥哥

<代码> var PAR =文档.GETelEnMyBID('MY-ID); 最接近的(“第二”)。代码>

标题
这是一个段落


这可能有助于理解DOM术语:……如果您是
par.closest(“#third”).style.background=“yellow”.nestest()
不返回元素本身,因为没有匹配的
h2
parents它返回最接近的祖先,包括与选择器匹配的自身。它本身不是h2,他们期望的h2也不是祖先。这可能有助于理解DOM术语:……如果您是
par.closest(“#third”)。style.background=“yellow”.nestest()
不返回元素本身,因为没有匹配的
h2
parents它返回最接近的祖先,包括与选择器匹配的自身。它本身不是h2,他们期望的h2也不是祖先。我一直认为大叔是祖先。谢谢你指出这一点,我一直认为大叔是我的祖先。感谢你指出“我一直认为大叔是祖先”好吧,这就是从其他学科借用术语时可能出现的混乱。但如果你认为叔父是通过婚姻而不是祖先(例如你母亲的姐妹的丈夫),所以是兄弟姐妹关系,而不是直接遗传。当然,如果您已经知道id,只需使用
document.getElementById('second')
document.querySelector('#second')
,因为id是文档所特有的…”“我一直认为叔父是祖先”好吧,这就是从其他学科借用术语时可能出现的混乱。但如果你认为叔父是通过婚姻而不是祖先(例如你母亲的姐妹的丈夫),所以是兄弟姐妹关系,而不是直接遗传。当然,如果您已经知道id,只需使用
document.getElementById('second')
document.querySelector('second')
,因为id对于文档是唯一的。。。