jQuery检查是否设置了.css属性

jQuery check if .css property was set

本文关键字:css 属性 设置 检查 是否 jQuery      更新时间:2023-09-26

我的代码看起来像这个

if($(element).css("background-color") == null){
  $(element).css("background-color", "white");
}

我想确保如果style.css文件中没有设置颜色,我会添加它。但代码不起作用。它总是返回rgba(0,0,0,0)。我使用的浏览器是Chrome。

有没有其他方法可以检查颜色是否未设置?

CSS:

.background-set { background-color: white; }

jQuery:

var $el = $(element);
if( !$el.hasClass('background-set') ){
   $el.addClass('background-set');
}

虽然我不知道你为什么需要检查。你可以不带条件地添加它。


或者:

if ( $el.prop('style').backgroundColor == '' ) {
   ... 
}

if ( $el.get(0).style.backgroundColor == '' ) {
   ...
}

elclans建议的方法是处理这一问题的最优雅的方法,应该是首选方法。但是,为了满足好奇心,您可以使用jQuery Attribute Contains Selector来获得相同的结果。

$("div[style*='background-color']").text("I have a background color!");

jsFiddle演示