使用javascript,我如何得到一个表格单元格的背景颜色,当我点击它
Using javascript, how do I get the background color of a table cell when I click on it?
我想有一个警报弹出,显示我的背景表格单元格每当我点击它。我似乎就是找不到或想不出如何抓取背景色。
我的表格单元格是这样的:
<td id="s0" onclick="selectCell(event)">0</td>
我的selectCell函数看起来像这样:
function selectCell(e){
alert(e.target.backgroundColor); //this gives me 'undefined'
alert(e.target.bgcolor); //this gives me 'undefined'
alert(e.target.bgColor); //nothing shows up. i don't believe this is a valid property
//once i know i am properly grabbing the color i will do stuff with it here.
}
我的CSS是这样的:
#s0 {
border: 1px solid;
background-color: yellow;
}
任何帮助将非常感激!!
节点的样式在styles属性中,例如:
e.target.style.backgroundColor;
然而,这只适用于那些用内联style
属性声明的样式。如果CSS是使用样式表分配的(应该如此),则需要使用:
window.getComputedStyle(e.target, null).backgroundColor;
Internet Explorer,不幸的是,不实现getComputedStyle()
选项,而是提供currentStyle
(注意,他们也不支持e.target
,我认为,至少在版本8之前?)。我没有Internet Explorer来测试,但是文档建议应该使用它:
var e = window.event ? window.event : e,
elementNode = e.target !== null ? e.target : e.srcElement;
elementNode.currentStyle.backgroundColor;
引用:
-
currentStyle
. -
Element.style
. -
window.getComputedStyle()
.
您可以通过Jquery css()函数轻松实现
jQuery(document).ready(function(){
$(this).click(function () {
var color = $(this).css("background-color");
alert(color);
});
});
要了解更多细节,请查看以下示例
相关文章:
- 表格单元格高度与背景高度匹配
- 谷歌工作表中的按钮,当单击时,会更改特定单元格的背景
- Google Apps 脚本:尝试根据单元格的背景颜色发送电子邮件
- 如何更改编辑单元格上方单元格的背景颜色(Javascript、Google电子表格)
- 单元格背景颜色不会更改 JavaScript
- jQuery - 单击时,单击时始终更改表格单元格的背景颜色
- 更改特定单元格的背景颜色
- 使用 ngHandsOnTable 更改单元格背景
- 单击事件以更改单元格背景
- 如何使用两个不同颜色的按钮更改表格单元格(td)的背景颜色
- JQuery在悬停时更改表单元格和行背景颜色
- 根据不同单元格上不同十六进制值的输入,为一个单元格生成多种颜色的背景
- 使用javascript,我如何得到一个表格单元格的背景颜色,当我点击它
- Javascript随机单元格背景颜色改变
- 如何根据单元格背景颜色的值仅更改为某些列
- 旧的javascript程序来改变文本和背景颜色的单元格
- 如何更改动态更改的单元格的背景和文本颜色
- 如何使用脚本更改单元格背景颜色的多个范围
- 谷歌应用程序脚本:找到单元格与一定的值,然后设置它的背景颜色
- 通过单击表格单元格中的任何位置来勾选表格单元格中的复选框,并更改该单元格的背景颜色