我无法从jquery中的书签遍历标记。具体来说,以下HTML:
<a id="comment-1"></a>
<div class="comment">
<h2 class="title"><a href="#comment-1">1st Post</a></h2>
<div class="content">
<p>this is 1st reply to the original post</p>
</div>
<div class="test">1st post second line</div>
</div>
我正试图遍历class =“title”的位置,如果页面登录了URL(site.com/test.html#comment-1)中的书签#标签。以下是我用于测试的代码:
if(window.location.hash) {
alert ($(window.location.hash).nextAll().html());
}
执行正常,并返回相应的html(<h2 class="title"><a href="#co...
)
问题是如果我向它添加选择器($(window.location.hash).next('.title').html()
)我得到一个空结果。为什么会这样?是nextAll不是正确的遍历功能? (我也试过下一个+发现无济于事)
谢谢!
答案 0 :(得分:3)
答案 1 :(得分:2)
$('#comment-1')
选择器选择<a>
元素。 next
方法查看该元素的下一个兄弟节点。没有这样的节点有一个“标题”类,所以你得到一个空的结果。在您的示例中,<a>
的唯一兄弟节点是class =“comment”的div。要查找<h2 class="title">
元素,您可以使用例如:
$(window.location.hash).next().children('.title')