用jQuery更改TD背景颜色

时间:2019-08-29 06:29:41

标签: jquery

我花了几个小时来尝试各种事情,但到目前为止都失败了。

我正在尝试将td(.myTD)的背景色设置为可变颜色。

我知道DOM已经加载完毕,并且我确认所有类名都是正确的,等等。

代码:

var appInfo = {"ads":[{"bgColor":"#FFF"}]};

$(".myTD").css('background-color', appInfo.ads[0].bgColor + ' !important');
console.log("variable = " + appInfo.ads[0].bgColor);
console.log($(".myTD").css('background-color'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<table border=1>
  <tr>
    <td>&nbsp;</td>
    <td class="myTD">&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>

控制台中没有错误。只是代码中的日志。

1 个答案:

答案 0 :(得分:1)

https://bugs.jquery.com/ticket/2066

jQuery不支持!important中的.css() 你可以用这个

$(".myTD").css('cssText', 
   'background-color:'+ appInfo.ads[0].bgColor + ' !important');

var appInfo = {"ads":[{"bgColor":"#FFF"}]};


var color = 

$(".myTD").css('cssText',
   'background-color:'+ appInfo.ads[0].bgColor + ' !important');
console.log("variable = " + appInfo.ads[0].bgColor);
console.log($(".myTD").css('background-color'));
td{
  background-color: gray;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<table border=1>
  <tr>
    <td>&nbsp;</td>
    <td class="myTD">&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>