以下这三个HTML,jQuery,color是怎么计算的啊?求助大神!

下面的例子将返回首个匹配元素的 background-color 值:
<!DOCTYPE html>
<html>
<head>
<script src="/jquery/jquery-1.11.1.min.js"></script>
<script>
$(document).ready(function(){
$("button").click(function(){
alert("Background color = " + $("p").css("background-color"));
});
});
</script>
</head>
<body>
<h2>这是标题</h2>
<p style="background-color:#f5c000">这是一个段落。</p>
<p style="background-color:#00ff00">这是一个段落。</p>
<p style="background-color:#0000ff">这是一个段落。</p>
<p style="background-color:#0f2345">这是一个段落。</p>
<p style="background-color:#c04a1f">这是一个段落。</p>
<button>返回 p 元素的背景色</button>
</body>
</html>

这里怎么计算的啊 元素的 background-color 值
alert("Background color = " + $("p").css("background-color"));

慕码人2483693
浏览 262回答 2
2回答

慕的地6264312

background-color 是 string是无法计算的获取 background-colorvar bgc = $('p').eq(0).css('backgroundColor');alert( "Background color = " + bgc);这里的eq(0)是指的第一个p元素在css()方法中,如果属性中带有“-”符号,例如font-size和background-color属性,如果在设置这些属性的值的时候不带引号,那么就要用驼峰式写法,比如上面的代码,如果带上了引号,既可以写成“'background-color'”,也可以写成“'backgroundColor'”。

MYYA

$.fn.getBackgroundColor&nbsp;=&nbsp;function()&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;rgb&nbsp;=&nbsp;$(this).css('background-color');&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(rgb&nbsp;>=&nbsp;0)&nbsp;return&nbsp;rgb;//如果是一个hex值则直接返回&nbsp;&nbsp;&nbsp;&nbsp;else{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rgb&nbsp;=&nbsp;rgb.match(/^rgb(\d+),\s∗(\d+),\s∗(\d+)$/);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;hex(x)&nbsp;{return&nbsp;("0"&nbsp;+&nbsp;parseInt(x).toString(16)).slice(-2);}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rgb=&nbsp;"#"&nbsp;+&nbsp;hex(rgb[1])&nbsp;+&nbsp;hex(rgb[2])&nbsp;+&nbsp;hex(rgb[3]);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;rgb;&nbsp;}可以用这个对象函数获取,因为浏览器不兼容,所以返回的属性值是不同的,这个函数可以解决
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java
JQuery