Jquery更改<;TD>; nbsp;nbsp;nbsp; nbsp;nbsp;nbsp; nbsp;nbsp;nbsp; nbsp;nbsp;nbsp;

Jquery更改<;TD>; nbsp;nbsp;nbsp; nbsp;nbsp;nbsp; nbsp;nbsp;nbsp; nbsp;nbsp;nbsp;,jquery,css,Jquery,Css,我需要一个jquery来将鼠标悬停时的背景更改为#00000,鼠标悬停时的原始颜色。这些是在一个循环中动态生成的,因此可以上升到td_100 我尝试了一些例子,但不幸的是calss的名字都是静态的,对我来说不起作用 如果将鼠标移到td_1上,则所有td_1都会受到相应的影响 提前感谢为什么要设置动态td行的类名???为什么不将他们的ID设置为“td_1”td_100'?鼠标滑过的时候改变他们的等级?或者css3过滤器如何?可以对整行进行悬停吗。或者将此代码修改为仅执行td <td clas

我需要一个jquery来将鼠标悬停时的背景更改为#00000,鼠标悬停时的原始颜色。这些是在一个循环中动态生成的,因此可以上升到td_100

我尝试了一些例子,但不幸的是calss的名字都是静态的,对我来说不起作用


如果将鼠标移到td_1上,则所有td_1都会受到相应的影响


提前感谢

为什么要设置动态td行的类名???为什么不将他们的ID设置为“td_1”td_100'?鼠标滑过的时候改变他们的等级?或者css3过滤器如何?

可以对整行进行悬停吗。或者将此代码修改为仅执行
td

<td class="td_1">nbsp;</td><td class="td_1">nbsp;</td><td class="td_1">nbsp;</td>
<td class="td_2">nbsp;</td><td class="td_2">nbsp;</td><td class="td_2">nbsp;</td>
<td class="td_3">nbsp;</td><td class="td_3">nbsp;</td><td class="td_3">nbsp;</td>
<td class="td_4">nbsp;</td><td class="td_4">nbsp;</td><td class="td_4">nbsp;</td>
我将执行以下操作:(我假设这些
元素中),因此您可以将类“table\u class”添加到表中,并在css中定义两个类:

$("#mytable tr").mouseover(function() {$(this).addClass("over");}).mouseout(function() {$(this).removeClass("over");});

注意:这个解决方案根本不需要JQuery;)

在css中,为

table.table_class td{
    background-color:#whatever;
}
table.table_class td:hover{
    background-color:#000;
}
然后在jQuery中

td.hoverstate{background-color:#000;}

我认为您根本不需要jQuery来实现鼠标悬停效果。CSS将完成以下工作:

   $("td").hover(
      function () {
        $(this).addClass("hoverstate");
      },
      function () {
        $(this).removeClass("hoverstate");
      }
    );
这假定您的表有一个ID或其他CSS挂钩

大量更新以响应其他单元需求

好的,如果你想让同一类的所有td都改变颜色,那么是的,你需要一些javascript

像这样的方法应该会奏效:

#table_id td {
  background: #ffffff;
 }

#table_id td:hover {
  background: #000000;
  color: #ffffff;
}
然后在CSS中:

$('td').hover(function(){
    var thisClass = $(this).attr('class');
    $('td.' + thisClass).addClass('hovered');
}, 
   function(){
     var thisClass = $(this).attr('class');
     $('td.' + thisClass).removeClass('hovered');
 }
我通常只尝试使用jQuery添加/删除类,而不是在CSS中进行颜色声明-这样维护通常更容易。

好的,请查看以下内容:。我已经按照你要求的方式工作了。chipcullen的答案行不通,因为您需要解析hover类

例如: 当您将鼠标悬停在所有td_1上时,该类将变为“td_1已悬停”

然后,当您尝试在选择器中使用此类时,结果是“td.td_1 hovered”,它将不会选择正确的div

.hovered { background: #000000; }

希望这有帮助

另外,您可以使用CSS来实现这一点,比如
td[class^=“td”]:hover{background color:red;}
。顺便说一句,引用HTML元素的类名可能是一个令人困惑的想法。为什么使用类而不是id?为什么会得到-1?没有足够的jQuery?如果鼠标移到td_1上,那么所有的td_1都会受到相应的影响。这是一个很好的观点,他要求jQuery,所以我想我会提供它。
var thisClass = $(this).attr('class');
$('td.' + thisClass).removeClass('hovered');

becomes

var thisClass = $(this).attr('class');
thisClass = thisClass.substring(0, thisClass.indexOf(" "));
$("td." + thisClass ).removeClass('hovered');