所以我知道使用“a:first”将获得页面的第一个链接。让我们假设我们有以下内容:
<div class="masterclass">
<a href="#">Link 1</a>
<a href="#">Link 2</a>
</div>
<div class="masterclass">
<a href="#">Link 1</a>
<a href="#">Link 2</a>
</div>
当然我可以使用以下代码来获取“masterclass”类的第一个“a”
$('.masterclass a:first').click(function() {
alert('yayfirstlink');
});
但是我不明白如何获得每个“masterclass”的第一个链接
答案 0 :(得分:2)
您需要在此处使用find(),因为您的选择器会在.masterclass
中找到所有锚元素,然后只过滤第一个。但是当你使用.find()
时,它会首先找到所有.masterclass
元素,然后在每个元素中找到第一个锚元素。
$('.masterclass').find('a:first').click(function() {
alert('yayfirstlink');
});
或者如果您确定目标元素将是其父元素的第一个子元素,那么您可以使用:first-child
$('.masterclass a:first-child').click(function() {
alert('yayfirstlink');
});
答案 1 :(得分:1)
试试这个,
var oFirstAnchor = $(".masterclass a:first-child");
答案 2 :(得分:1)
$(".masterclass a:first-child")
正是您要找的。 p>
这样:
$('.masterclass a:first-child').click(function() {
alert('yayfirstlink');
});
答案 3 :(得分:1)
这是你循环遍历每个masterclass并获取它的第一个链接的方式。 我不知道你想用它做什么,所以我只能提供这个
$(document).ready(function(){
var fields = $('.masterclass a:first-child');
$.each(fields, function(index, val){
alert(index);
});
});
这会警告当前的链接数组索引 http://jsfiddle.net/kBd82/6/
答案 4 :(得分:0)
我建议使用第一个类型选择器。
$('.masterclass a:first-of-type')
这样它总是会在每个masterclass
div中选择第一个锚标记,即使你稍后在div中放入其他东西。