如何获取元素的样式值 - jQuery

时间:2014-09-27 15:29:28

标签: javascript jquery html css if-statement

如何获取background-color属性的值

if ($(this).css('background-color') == 'InfoBackground') 
{
     // it doesn't enter here
}

2 个答案:

答案 0 :(得分:0)

据我所知,

jQuery中的背景颜色输出为rgb(),所以我不认为是否有方便的比较方法!

看看THIS示例,

alert($('#color').css('background-color'));
if($('#color').css('background-color')=='red'){
    alert('first if');
}

如果因为$('#color').css('background-color')等于rgb(255,0,0)并且它与red不匹配,它将不会进入第一个,因此它不会进入if条件。

你可以做的是给所需的DOM一个类,并检查该元素是否具有类,如下所示:

if($('#color').hasClass('red')){
    alert('second if');
}

将触发其中的警报。

答案 1 :(得分:-1)

您需要检查InfoBackground是什么的RGB值。

请注意以下内容返回 rgb(251, 252, 197)

if ($("#myElement").css('background-color') == 'rgb(251, 252, 197)') {
     alert('hello');
}
#myElement { background-color: InfoBackground; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

<div id="myElement">Hi</div>


然而,这似乎是一种善变的方法。不同的浏览器可能表现不同或以不同方式实现InfoBackground。最好分配一个类,属性或数据属性,然后用它来指示颜色。