如何解决如何更改表格中项目的背景? [重复]
| 这个问题已经在这里有了答案:解决方法
您可以将具有自定义样式的css类(而不是显式设置背景色)添加到这些元素,然后按如下所示修改函数:
function getclick(elem)
{
//find any elemenet with given class
//remove that class from it
//add that class to \'elem\'
}
我不知道纯JavaScript的正确语法,但是使用jQuery,可能是:
// find any element with given class and remove it
$(\'.yourClass\').removeClass(\'yourClass\');
// add that class to clicked element
elem.addClass(\'yourClass\');
您可以在此处查看工作示例。
顺便说一句:您的榜样对我没有用。
,这是带有纯JavaScript的版本。它使用事件委托,这意味着仅一个单击处理程序分配给表,而不分配给每个单元格:
(function() {
var current,table = document.getElementById(\'table\'); // I gave the table
// the uncreative ID `table`
table.onclick = function(event) {
event = event || window.event;
var target = event.target || event.srcElement;
if(target.nodeName !== \'TD\') {
do {
target = target.parentNode;
} while(target && target.nodeName !== \'TD\');
}
if(target) {
if(current) {
current.style.backgroundColor = \'\';
}
target.style.backgroundColor = \'#EFF2F7\';
current = target;
}
};
}());
演示
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。