为了账号安全,请及时绑定邮箱和手机立即绑定

大问题~~~~~!

 $("body:has('label')").css("background-color", "blue");

为什么这样写选不中label啊

正在回答

2 回答

    <body>

        <div>改变包含"label"元素的背景色:</div>

        <ol>

            <li><p>我是P先生</p></li>

            <li><label>L妹纸就是我</label></li>

            <li><p>我也是P先生</p></li>

            <li><label>我也是L妹纸哦</label></li>

            <li><p>P先生就是我哦</p></li>

        </ol>

        

         <script type="text/javascript">

    $("li:has('label')").css("background-color", "blue");

        $("li label").css("background-color", "red");

        </script>

    </body>

http://img1.sycdn.imooc.com//56e90b700001a9b903150256.jpg

做个小实验,注意两个选择器的区别

1 回复 有任何疑惑可以回复我~

li:has('label'))是选择包含<label>的<li>,而不是选中label,同理,body:has('label')是选择包含<label>的<body>,如果body元素内包含<label>,很明显是有包含的。所以选中body,就看到的整个body背景色改变了

3 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
jQuery基础课程
  • 参与学习       154768    人
  • 解答问题       7184    个

加入课程学习,有效提高前端开发速度

进入课程

大问题~~~~~!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信