<a href="#" title="Link 1" class="links">First Link</a>
<a href="#" title="Link 2" class="links">Second Link</a>
并且还有一个功能可以提醒用户点击链接标题时链接标题是什么:
$(".links").click(function(){
var a_link = $(this);
alert((a_link.attr("title"));
});
现在,我如何提醒用户相关课程的下一个标题是什么?我试过用几种格式的next()但是无法搞清楚。 非常感谢您的帮助。
答案 0 :(得分:1)
$(".links").click(function(){
var a_link = $(this);
alert(a_link.attr("title"));
var a_next_link = a_link.next();
alert(a_next_link.attr("title"));
});
答案 1 :(得分:0)
$(".links").click(function(){
var next = $(this).next().attr('title');
alert(next || 'no adjacent element');
});
请注意,如果单击第二个链接,则返回undefined,因为没有相邻元素。
答案 2 :(得分:0)
因为它们都拥有应该正常运行的同一个类,所以jQuery会自动将回调事件分配给每个具有links
类的项目!
如果您想知道如何自行循环,那么您可以这样:
$('.links').each(function(){
$(this).click(function(){
/Blah
});
});
如果你想知道如何从父索引增加循环中的下一个元素,你应该尝试类似的东西:
$(this).next().attr('title')
withinside回调函数,但你应该做一个if == undefined,因为不是所有的时间你都有这个元素,例如当他们点击最后一个链接时,就不会有一个。
如果您的页面上有其他项目links
,但您不想绑定它们,那么您可以
<div class="header_links">
<a href="#1" title="Link 1" class="links">First Link</a>
<a href="#2" title="Link 2" class="links">Second Link</a>
</div>
<a href="#3" title="Link 2" class="links">Second Link</a>
JavaScript的:
$('.links','.header_links').each();
这只会绑定div中的一个header_links