我试图让H3标签的内容最接近我选择的元素。
$(this).closest('h3').html();
上面的代码在运行时包含null,“this”肯定是与h3在同一父元素中的另一个元素的选择器。
有人可以提供一个关于它为什么不起作用的想法吗?
感谢。
答案 0 :(得分:5)
“this”绝对是另一个元素的选择器 父元素
那是你的问题。 closest
看起来 up DOM树,而不是兄弟姐妹。请改用siblings
:
$(this).siblings('h3').html();
请注意,这将返回第一个h3
兄弟的HTML。如果还有更多,您可能需要指定正确的。
答案 1 :(得分:1)
jQuery还有方法.next()
和.prev()
,以防您知道h3
与$(this)
相关的方向。
例如:
$(this).click(function(){
$(this).next('h3').html('a string');
});