[英]jQuery addClass stopped working
由于某种原因,jQuery.addClass已停止工作。 我不知道为什么。 其他东西虽然有效。
// Change row background color on click
jQuery('#rowList tr').live("click", function() {
alert(jQuery(this).attr('title')); // Just here for testing. This works
alert(jQuery(this).css('border','solid 1px red')); // Just here for testing. This works
jQuery(this).closest("tr").siblings().removeClass("selected");
jQuery(this).addClass("selected"); // NOT working
});
有什么原因不起作用? 这是我的HTML:
<table id="rowList">
<tbody>
<tr title="My title 1" class="imageItem odd"> <td>some stuff</td></tr>
<tr title="My title 2" class="imageItem even"><td> some stuff here</td></tr>
</tbody>
</table>
您在第二个警报中缺少)
:
alert(jQuery(this).css('border','solid 1px red'));
^
修复该功能后, 您可以在此处进行测试 。 .closest("tr")
,由于您使用的是<tr>
,因此不需要.closest("tr")
调用,因此可以将其从链中删除,总的来说像这样:
CSS:
.bordered { border: solid 1px red; }
脚本:
jQuery('#rowList tr').live("click", function() {
alert(jQuery(this).attr('title'));
jQuery(this).addClass("bordered selected")
.siblings().removeClass("selected");
});
因为您编写的方式是.addClass()
将类添加到td
而不是父tr
。
除非省略closest('tr')
是错字?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.