jquery - 如何使用 jQuery 检查 css 值?

标签 jquery css

当用户点击表格行后,我想让它检查表格行的背景颜色是否为白色,如果是,它会将颜色更改为浅蓝色。

我使用的代码不工作。在这里:

$("#tracker_table tr#master").click(function(){
  if($(this).css("background-color") == "#FFFFFF") { 
    $(this).css("background-color", "#C2DAEF");
  }
});

我认为我的 if 语句有问题。我如何使用 jQuery 检查 css 值?

最佳答案

看起来它以 rgb(x, y, z) 的形式返回,所以您的代码应该是:

$("#tracker_table tr#master").click(function(){
  if($(this).css("background-color") == "rgb(255, 255, 255)") { 
    $(this).css("background-color", "#C2DAEF");
  }
});

编辑:话虽如此,我建议您使用类而不是直接检查/设置 css 属性。像这样:

$("#tracker_table tr#master").click(function(){
  if(!$(this).hasClass("selected")) { 
    $(this).addClass("selected");
  }
});

CSS:

tr { background-color: #FFFFFF; }
tr.selected { background-color: #C2DAEF; }

关于jquery - 如何使用 jQuery 检查 css 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2941213/

相关文章:

html - 如何设置与主要内容重叠的粘性页脚背景?

jquery - 以编程方式设置 <select> 的值时,不会调用 Change 事件

html - 我可以设置背景图片的属性(Scale to Fill, Aspect Fit, Aspect Fill)吗?

java - Java 的 CSS validator 库

jquery - Rails - 根据单选选择更改表单操作

html - 从父元素强制宽度

javascript - 为什么 Internet Explorer 会中断弹出窗口中的每个单词?

javascript - 如何防止输入元素在父 div 中移动?

javascript - 无法在 ie8 中获取未定义或空引用错误的属性 'refresh'

javascript - 如何根据表格是否有行动态隐藏按钮