【发布时间】:2018-12-15 14:18:42
【问题描述】:
在我的 HTML 中,每个 td 代表一个正方形。如果它们是白色的(默认情况下),我只需将它们更改为黄色,如果它们是黄色的,则通过右键单击将它们更改为白色。这是我的代码:
$('tbody').on('contextmenu', 'td', (e) => {
const td = $(e.currentTarget);
if (td.css('background-color') !== 'yellow') {
td.css('backgroundColor', 'yellow');
} else {
td.css('backgroundColor', 'white');
}
e.preventDefault();
});
问题是黄色可以工作,但再次右键单击它就再也不会变回白色了。
【问题讨论】:
-
我们可以要你的 HTML 吗?
-
答案在第一条评论中,这个问题必须作为错字关闭
-
@treyBake 他们是一回事。问题是由于来自
css()的响应格式造成的 -
@RoryMcCrossan 真的吗?我认为
.css()所做的所有事情都是用 key => value 添加到样式数组中? (因此 backgroundColor 无效)? -
@treyBake nope,它允许骆驼大小写和连字符表示法:jsfiddle.net/reusy8x3
标签: javascript jquery