JavaScript compare Element.style.display
JavaScript compare Element.style.display
我有一个页面,上面有很多元素,如下所示:
<tr class="blah" style="Display:none;">
当我遇到像上面这样的元素时,我想对它进行一些处理。我遇到的问题是"if子句"永远不会返回真值。警报将显示"none"(无引号)。我希望"if子句"的求值结果为true。我尝试过使用"=="并在显示后添加".ToString()"。这不起作用。
var rows = document.getElementsByTagName("tr");
for(var i=0; i < rows.length; i++) {
alert(rows[i].style.display);
if (rows[i].style.display === "none") {
//Do some stuff
//Code never gets here.
}
}
为什么"if子句"中的比较结果总是为false?
对我来说,它非常适合你的代码,试着在if子句后面放一个警告。
建议使用display而不是display
<tr class="blah" style="display:none;">
我在jsfiddle中试用了您的代码,它运行良好,请查看http://jsfiddle.net/HygdL/
var rows = document.getElementsByTagName("tr");
for(var i=0; i < rows.length; i++) {
if (rows[i].style.display === "none") {
alert('okay, its works!');
}
}
相关文章:
- 为什么我可以'不要使用xx[this.index].style.display?它's说“;无法读取属性
- placeHolder id未使用style.display显示
- Greasemonkey:当style=“display: none;”发生变化时如何做某事
- style.display="块“;在所有最新的浏览器中
- Javascript错误文档.getElementById('x').style.display=
- style.display无法在Chrome、Safari-Firefox、IE11中正常工作
- 通过一个按钮JAVASCRIPT更改style.display在多个对象上的显示
- 设置 style.display= none 后优雅的 javascript 重新调整
- elementID.style.display='block' 在 chrome 中不起作用,但在 Fi
- 设置 style
- 标记时不显示.display = none
- element.style.display='none' 不起作用
- Javascript style.display在VS2012中未保持更改
- 如果display是在CSS上声明的,为什么element.style.display是空的
- Javascript style.display带走了
- 项目符号
- JavaScript compare Element.style.display
- 应用JavaScript className更改和style.display='块'同时不起作用
- style.display=“;none”;不起作用
- 正在获取继承的style.display属性
- 元素未显示为obj.style.display='';
- myDiv.style.display在主样式表中设置时返回空白