jquery - 将 attr 应用于 div 但不应用于子级 (JQuery)

标签 jquery html attr

我有一些 html 代码看起来像这样:

<div id='main'>
    <a href=''>
    <div id='otherA'>
            <a href=''>
    </div>
    <div id='otherB'>
            <a href=''>
    </div>
</div>

我想使用 JQuery 将属性“target”应用于#main 的元素,而不是#other 的元素。我尝试了一些方法,我认为这是我得到的最接近的方法,但它似乎不起作用。

$(document).ready(function(){
    $('#main a').not(['#otherA a', '#otherB a']).attr('target', '_blank');
});

最佳答案

使用 #main > a 作为选择器。这只会在 #main 下选择 'a' 标签。

$(document).ready(function(){
    $('#main > a').attr('target', '_blank');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<div id='main'>
    <a href=''>main a</a>
    <div id='otherA'>
            <a href=''>asdsf</a>
    </div>
    <div id='otherB'>
            <a href=''>kjklsdf</a>
    </div>
</div>

关于jquery - 将 attr 应用于 div 但不应用于子级 (JQuery),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32870017/

相关文章:

php - 如何在 Jquery 和 PHP 中连接字符串

accordion - Jquery 在 IE 8/7 中切换效果

html - 为什么弹跳图标不会在我的页面上移动? (CSS)

html - 侧边栏和粘性页脚

javascript - 从 attr() 获取值后对象没有方法 'spilt'

javascript - 使用导出工具时显示条目下拉列表消失

jquery - 是否可以将 SimpleModal 与 ASP.NET MVC 一起使用?

html - anchor 链接跳得太远

jquery - 我如何获取 jquery-ui 自动完成小部件的上下文?

angular - 在 Angular 2 或 4 : Advice + Best/which way to do it 中有条件地使输入字段只读