我想搜索JQuery搜索href
s的后代。我在想我应该使用.find()
方法,但收效甚微,因为我不确定是否将.attr()
方法作为参数或后续方法传递。
var trialMethod = function($this) {
//Ive tried along the lines of this
$this.find(.attr('href'));
//and this
$this.find().attr('href');
}
我正在使用点击处理程序(这个处理程序专门附加到所有链接,无论它们是否由JS / JQ更新),并尝试查找所点击的href
。因为我试图在没有JS的情况下最大化网站的功能,所以链接是静态的,然后通过JS / JQ替换。因此,当点击链接时,它可能位于<li>
或<span>
或其他任何位置。我试图保持约定不要声明第n个子元素或特定元素,而是搜索,因为DOM树可能会更改,因此查找href
属性,我将检查是否单击了某个链接。 / p>
1 - 如何使用href
和.find()
两种方法找到子元素的.attr()
?
2 - 我已经阅读了JQ API,但只是想要一点澄清; .find()
方法¿必须?传递一个参数?如果是这种情况,那么我现在知道不要浪费时间尝试类似于我的第二次尝试......
答案 0 :(得分:2)
你的意思是:
var allHrefs = $this.find("[href]").map(function() {
return this.href;
}).get();
答案 1 :(得分:1)
要查找具有HREF属性的所有链接,只需使用:
$(document).find('a[href]');
可以对rel
进行相同的操作,例如
$(document).find('a[rel]');