我正在尝试更改此background
数据广告的<tr>
。
var lastIdx = null;
var t = $("#campaigns_list").DataTable();
t.rows.add(['.$str_json.']).draw();
$("#campaigns_list tr").not(":first").hover(
function() {
$(this).css("background", "yellow");
},
function() {
alert("bye");
}
);
但我不知道为什么,background-color
的{{1}}没有改变。
<tr>
此代码似乎无法更改颜色。但是,悬停功能会自行调用,因为如果我用警报替换上面的行,那么警报就会正常发生。
答案 0 :(得分:1)
<td>
内<tr>
最有可能需要具有背景颜色。
编辑:例如:
$(this).find('td').css('background', 'yellow');
答案 1 :(得分:1)
在我看来,这是一个事件委托问题,因为它与datatables
一起使用。 Datatables
插件会动态生成trs
并且您在页面加载时绑定事件,并且在加载DOM后生成trs
,因此您可以尝试使用将事件委托给最近的静态父级或文档本身:
$("#campaigns_list").on('hover mouseenter', 'tr:not(:first)', function(){
或者您可以尝试使用此事件:
$(document).on('hover mouseenter', '#campaigns_list tr:not(:first)', function(){
您可以委派给最近的静态父或$(document)
本身。