在jquery中使用$(this)选择器和另一个嵌套选择器

gar*_*dni 2 javascript jquery this attr

使用时指定嵌套选择器的最佳方法是什么$(this)

在这个例子中:

$('.example').each(function() {
    var url = $(this).attr('href');
});
Run Code Online (Sandbox Code Playgroud)

url会返回undefined,因为它会'a'首先要求选择器.理想情况下,我想说:

var url = $(this, 'a').attr('href');
Run Code Online (Sandbox Code Playgroud)

但这不起作用,以下按预期工作,但看起来不是很整洁:

$('.example').each(function() {
    var link = $(this).find('a');
    var url = $(link).attr('href');
});
Run Code Online (Sandbox Code Playgroud)

那么,如何使用$(this)'a'一起正确?


注意:我知道以下内容可行,但不是出于我的问题的目的.

 $('.example > a').each(function() {
     var url = $(this).attr('href');
 });
Run Code Online (Sandbox Code Playgroud)

Mil*_*war 5

使用:

$(this).find('a').attr('href');
Run Code Online (Sandbox Code Playgroud)

  • 作为旁注,当针对其他方法进行测试时,这被证明是最快的方法(仅略微,但它仍然是最快的). (2认同)