问答详情
源自:2-8 jQuery选择器之内容筛选选择器

$(".div:has(span)").css("color", "blue");中span为什么就不能写成":span"了?

 $(".div:has(:span)").css("color", "blue");为什么不行?什么时候括号里面要加":"

提问者:fighting加油吧 2016-10-28 13:21

个回答

  • 朝闻道1991
    2016-10-28 15:28:53
    已采纳

    .div : has(span)的意思是类名为div的元素下面有span标签的那些元素,选出来。

    而你写的.div : has(:span)的意思就是把className=div下面的标签名为":span"的元素选出来。

    .div : has(element)本来就已经是一个选择器了,has方法的括号里面放进去的就直接是你的选择筛选器,如这里的名字叫做span的标签。

  • 北极的大熊
    2017-02-06 14:49:12

    has里面要放一个标签,并没有一个标签叫做:span

  • qq_水无声_03882251
    2016-11-30 20:18:21


     $(".div:contains('contains')").css("color", "#CD00CD");

    这样写也一样,你是被它误导了

  • 小女人
    2016-10-28 15:11:47

    :span是个什么鬼,:号后面加的,都是jQuery定义好的,不是随便加的,比如:has,:odd等等