jQuery最近用法
我们有:jQuery最近用法,jquery,Jquery,我们有: <div class="companylinks"> <span class="current"> <a class="welcome">Welcome!</a> </span> <span> <a class="ic_generalinfo">General Info</a> </span> </div> 但我正在变
<div class="companylinks">
<span class="current">
<a class="welcome">Welcome!</a>
</span>
<span>
<a class="ic_generalinfo">General Info</a>
</span>
</div>
但我正在变得“未定义”,我应该如何定义它呢
我将感谢任何帮助。
谢谢只在DOM中向上遍历,而不是向下遍历。您可能需要使用类似于子类的内容
代码中还有其他错误;您当前正在访问#companylinks
,它应该是.companylinks
,因为这是一个类名而不是ID。除此之外,您的span[class=“current”]
可以写为span.current
,尽管这不是一个错误。.closest()
函数获取最接近的父对象而不是最接近的子对象。要获得您想要的,只需执行以下操作:
$('a.welcome')
或者,如果您需要更具体的信息:
$('.current a.welcome')
阅读
对于集合中的每个元素,获取与
通过测试元素本身并向上遍历其
DOM树中的祖先
写下这个
$('.companylinks span.current').find('a').attr('class');
嘿,伙计,如果你只想要锚元素,你可以这样做:
$(document).ready( function() {
var selected_tab = $('.companylinks .current').find('a').attr('class');
alert(selected_tab);
});
$(".current a").attr("class");
.closest()
沿父链向上,而不是沿父链向下
要指定选择器中必须满足所有条件的多个父级,只需在选择器中以空格分隔分别列出它们。在这种情况下,您可以将.current中的
标记作为目标,然后按如下方式获取其类:
$(document).ready( function() {
var selected_tab = $('.companylinks .current').find('a').attr('class');
alert(selected_tab);
});
$(".current a").attr("class");
或者,如果您想将其范围仅限于.companylinks
的内部,则可以使用此选项
$(".companylinks .current a").attr("class");
注意:您不需要使用span[class=“.current”]
。您可以使用.current
在span
中是否只有一个a
?@JanHančič是的,只有一个请先阅读手册,然后再发布问题:当您可以将a
放在选择器中时,为什么要在这里使用.find()
?