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

$("ol:last-child").css("background-color", "blue");这个为啥没反应啊?

$("ol:last-child").css("background-color", "blue");

这个为啥没反应呢?

$("ol:first-child").css("background-color", "blue");都是可以的。

正在回答

4 回答

空格啊

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

要在ol后面加上空格,

主要是选择器的问题。

举个例子:$("div span")的意思是选择div元素里的所有span后代元素,包括子元素和孙元素

具体到这里,$("ol :first-child")意思是选择每个ol元素里的第一个子元素 这个写法跟$("ol li:first-child")是一样的。

至 于$("li:first-child"),如果在li的后面加上空格 ,就表示选择每个li元素里的第一个子元素 ,可是li里面已经没有子元素了。所以自然没有反应 。再来打个比喻 ,如果你在第一个li,也就是"芹菜"这个文本下用<p></p>标签,即<li><p>芹菜< /p></li>。那这样的$("li :first-child")就能跑了。

希望能够帮到你。   

Keith.


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

因为

<script type="text/javascript">
         $("ol:last-child").css("background-color", "blue");
</script>

也算<body>的子元素,所以ol不是<body>的last-child

如果把<script type="text/javascript">放到<head>里,$("ol:last-child").css("background-color", "blue");就生效了


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

扬州灬炒饭

原来如此,我居然没想到,还是太naive
2015-08-12 回复 有任何疑惑可以回复我~
#2

扬州灬炒饭

好像并没有什么用啊
2015-08-12 回复 有任何疑惑可以回复我~
#3

扬州灬炒饭

有用的,是你这个解释,谢了
2015-08-12 回复 有任何疑惑可以回复我~
#4

JRuth

好像并没有用啊!!!!!!!!!!!!!!!
2015-10-30 回复 有任何疑惑可以回复我~
查看1条回复

别用ol,用li就行了

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

举报

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

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

进入课程

$("ol:last-child").css("background-color", "blue");这个为啥没反应啊?

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