Jquery更改<;TD>; nbsp;nbsp;nbsp; nbsp;nbsp;nbsp; nbsp;nbsp;nbsp; nbsp;nbsp;nbsp;
我需要一个jquery来将鼠标悬停时的背景更改为#00000,鼠标悬停时的原始颜色。这些是在一个循环中动态生成的,因此可以上升到td_100 我尝试了一些例子,但不幸的是calss的名字都是静态的,对我来说不起作用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
如果将鼠标移到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');