我正在使用这个简单的脚本将 target="_blank" 属性添加到所有元素。
$(function(){
$('a').attr('target', '_blank');
});
它工作得很好,但我只希望<a>
in<div id="main">
受这个脚本的影响。
我试过了 :
$('#main').$('a').attr('target', '_blank');
但这只是行不通....
我正在使用这个简单的脚本将 target="_blank" 属性添加到所有元素。
$(function(){
$('a').attr('target', '_blank');
});
它工作得很好,但我只希望<a>
in<div id="main">
受这个脚本的影响。
我试过了 :
$('#main').$('a').attr('target', '_blank');
但这只是行不通....
用这个 :
$('#main').find('a').attr('target', '_blank');
$('#main a').attr('target', '_blank');
您应该查看 jQuery 网站以获取有关选择器的信息(选择器是传递给 $ 函数的字符串)。
在这种情况下,jQuery 将选择任何 id 为“main”的标签中的所有“a”标签。
您甚至可以使用 css 类指定标签。例如,如果您只想影响具有 css 类“blankLink”的“a”标签,则可以这样做
$('#main a.blankLink').attr('target', '_blank');
看看这个!
$('a','#main').attr('target','_blank');
也应该工作。
假设你的 html 的结构是这样的:
<div id="main">
<a id="1"></a>
<a id="2"></a>
<a id="3"></a>
<div>
<a id="4"></a>
<div>
<a id="5"></a>
</div>
</div>
</div>
笔记:
这将改变 1,2,3,4,5:
$('#main a').attr('target', '_blank');
这将改变 1,2,3:
$('#main > a').attr('target', '_blank');