这是我的 HTML?
<ul>
<li>
<a href="./link1">
<div>something</div>
<span><a href="./link2">link</a></span>
</a>
</li>
</ul>
这是我的 jQuery 代码:
$('li').on('click', function(){
var link = $(this).find('a').attr('href');
})
如您所见,有两个 <a>
标签。和.find()
指的是他们两个。虽然我只想选择 <a>
它位于 <li>
中的(一层)标签。所以预期结果是./link
.
我应该使用什么替代方案来代替 .find()
?
最佳答案
您可以使用直接后代选择器。
$('li').on('click', function(){ var link = $(this).find('> a').attr('href'); })
关于javascript - 如何选择第一个特定的内部元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44346344/