jQuery:改变背景颜色的简单.css行在Chrome中不起作用

时间:2014-04-05 19:35:44

标签: jquery css google-chrome

我使用以下行有条件地更改TD的背景颜色。 这在IE和Firefox中运行良好,但在Chrome中它根本不设置任何颜色。

我也尝试使用rgb(255,255,0),但Chrome的结果相同,使用版本33.0.1750.154 m,这似乎是最新版本。

有没有办法在所有三种浏览器中使用它?

我的代码段

$('.search').click(function() {
    var value = $(this).text();
    var color = $(this).css('background-color');
    if(color == 'transparent') {
        $('td')
        .css('background-color', '')
        .filter(function(){
            return $(this).text() === value;
        })
        .css('background-color', 'yellow');
//...
提前谢谢,蒂姆。

2 个答案:

答案 0 :(得分:1)

如果可以的话,首先检查是否有任何错误发生,你可以看一下控制台.. 如果没有找到错误,请在检查元素时选中蓝色时检查css选择器... 如果没有,尝试设置宽度和高度..如果现在,尝试设置overflow:hidden,.. 如果仍然有问题,尝试在css文件中设置bg颜色和类,如果工作正常,你可以尝试addClass像

.testColor{
background-color: yellow;
} 

jQuery(".myClass").addClass("testColor");
祝你好运

答案 1 :(得分:0)

看起来像检查"透明"在设置背景颜色之前是问题,因为只有IE和FF以这种方式返回颜色,而Chrome返回rgba(0,0,0,0)。

我更改了if行,如下所示对我有用 - 不确定rgb是否也能正常工作:

//...
if( (color == 'transparent') || (color == 'rgba(0, 0, 0, 0)') ) {
/...