我今天刚开始玩javascript和css。有人会介意向我解释为什么这个if语句永远不会返回true。
if (document.getElementById('girl1').style.backgroundColor == '#65bd77') {
alert("true");
}
即使它现在硬编码为背景颜色。
我明白了。其
if (document.getElementById('girl1').style.backgroundColor == 'rgb(101, 189, 119)'){
//
}
答案 0 :(得分:2)
那是因为颜色不以特定格式返回。
我在Firefox,IE和Chome中试过这个,它可以在那里工作:
if (document.getElementById('girl1').style.backgroundColor == 'rgb(101, 189, 119)'){
alert("true");
}
演示:http://jsfiddle.net/Guffa/3CcA4/
但是,你应该尝试找一种不同的方法来检查你正在寻找的东西,因为返回的CSS格式在当前和未来的每个浏览器中可能都不一样。例如,您可以使用类而不是直接在元素上设置样式,这样更容易可靠地检查。