我测试了以下div的可见性:如何检查visibility属性用JavaScript
<div id="div1">div</div>
与风格分别
#div1 {
visibility:visible; //or hidden
}
定义如果样式是行内定义为<div id="div1" style="visibility:visible">div</div>
有它很容易检查element.style.visibility
属性中的可见性。但问题在于风格是单独定义的(如上所示 - #div1,.div1或div)。
那么在哪里可以检查仅使用纯JavaScript的可见性属性? jQuery每次都会返回正确的样式(我不知道如何跟踪它),那么他们是如何做到的?这里是一个fiddle我不成功的尝试,除了jQuery的工作没有测试:
alert($(el).css('visibility')); // jQuery works well - returns correct property
alert(el.style.visibility); // not works - always empty string
alert(el.offsetWidth > 0 || el.offsetHeight > 0 ? 'yes':'no'); // also not working - always true - http://stackoverflow.com/questions/1343237/how-to-check-elements-visibility-via-javascript
alert(el.getComputedStyle); // undefined - http://stackoverflow.com/questions/4795473/check-visibility-of-an-object-with-javascript
alert(el.getAttribute('visibility')); // not works - of course null
上如何成功任何想法?测试最新的Firefox 15.
我有如下使用它一个Android项目用'webview'显示一个HTML + Javascript,这给了我一个错误:''Uncaught TypeError:无法调用null''的方法'getPropertyValue'。我猜它不明白“窗口”是什么? – 2016-02-17 23:09:51
但'el.style.visibility'起作用。 – 2016-02-17 23:25:31