jQuery css() 方法
jQuery css() 方法
css() 方法设置或返回被选元素的一个或多个样式属性。
返回 CSS 属性
如需返回指定的 CSS 属性的值,请使用如下语法:
css("propertyname");
下面的例子将返回首个匹配元素的 background-color 值:
设置 CSS 属性
如需设置指定的 CSS 属性,请使用如下语法:
css("propertyname","value");
下面的例子将为所有匹配元素设置 background-color 值:
设置多个 CSS 属性
如需设置多个 CSS 属性,请使用如下语法:
css({"propertyname":"value","propertyname":"value",...});
下面的例子将为所有匹配元素设置 background-color 和 font-size:
mjhhh
523***128@qq.com
参考地址
文章的第一段代码中,只获取到了第一个 p 标签的 background-color,那么怎么才能获取到第二或第三个 p 的背景颜色呢,加入选择器 :nth-child():
<body> <h2>这是一个标题</h2> <p style="background-color:#ff0000">这是一个段落。</p> <p style="background-color:#00ff00">这是一个段落。</p> <p style="background-color:#0000ff">这是一个段落。</p> <button>返回第一个 p 元素的 background-color </button> </body> $("button").click(function(){ alert("p1背景颜色 = " + $("p:nth-child(2)").css("background-color")); alert("p2背景颜色 = " + $("p:nth-child(3)").css("background-color")); alert("p3背景颜色 = " + $("p:nth-child(4)").css("background-color")); });尝试一下 »
PS: 这里 :nth-child() 选择器默认以 body 作为父标签,所以 :nth-child(1) 是 <h2> </h2>。
mjhhh
523***128@qq.com
参考地址
Ishinary
128***3211@qq.com
上一篇笔记中用的 nth-child 太麻烦。
当页面的元素特别多,父子关系特别繁杂的时候,不可能一个个去数要的元素是 body 的第几个元素。
另一方面,页面可以动态的,body 下的索引容易变化,用这个方法指定某个元素非常不靠谱。
要选取第几个 p 的方法,正确的应该是这样:
$("p").eq(N) // N 是索引号,从 0 开始详见后面的jQuery 遍历- 过滤章节。
Ishinary
128***3211@qq.com
搬砖的三岁
sun***harbdata.com
1 楼和 2 楼都很麻烦啊:
<div class="getColor"> <p class="a">first</p> <p class="b">second</p> <p class="c">third</p> </div> <button class="color">弹窗返回颜色</button> <script> $(function(){ $(".color").click(function(){ alert("b的背景颜色为:" + $(".getColor").children(".b").css("background-color")); }); }); </script>这样子不是更清晰吗???
搬砖的三岁
sun***harbdata.com
0304018
lw3***3238dangji@163.com
你们都太麻烦了,使用一个循环不是全搞定:
<body> <h2>这是一个标题</h2> <p style="background-color:#ff0000">这是一个段落。</p> <p style="background-color:#00ff00">这是一个段落。</p> <p style="background-color:#0000ff">这是一个段落。</p> <button>返回第一个 p 元素的 background-color </button> <script> $(document).ready(function(){ for(var i=0;i<3;i++){ alert($('p').eq(i).css('background-color')); } }); </script> </body>一步到位。
0304018
lw3***3238dangji@163.com
过路的
157***6055@qq.com
$(function() { $("button").click(function() { for(var i = 0; i < $("p").length; i++) { alert($("p").eq(i).css("background-color")); } }); });过路的
157***6055@qq.com