javascript - 如何使用javascript检查可见性属性

标签 javascript css properties

我测试了以下 div 的可见性:

<div id="div1">div</div>

单独定义样式

#div1 {
    visibility:visible; //or hidden
}

如果样式内联定义为 <div id="div1" style="visibility:visible">div</div>element.style.visibility 中检查可见性很容易属性(property)。但问题是样式是单独定义的(如上所示 - #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 中测试。

最佳答案

getComputedStyle是一个全局方法。按如下方式使用它:

window.getComputedStyle(el, null).getPropertyValue('visibility');

关于javascript - 如何使用javascript检查可见性属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11764407/

相关文章:

javascript - 单击下拉菜单移动不工作

javascript - img src 中的 meteor 模板不起作用

css - 空间太大( float div)

html - CSS meganav 子导航 div 位于父 div 的顶部

jquery - Bootstrap : Text overlay on image stuck to the left side

javascript - 如何提高 xPage 上的 typeAhead 性能?

javascript - 正确的闭包术语,或者确切地说什么是闭包

javascript - 对象属性赋值中的语法错误

python - 如何在Python中将类似属性的对象与字典值关联

c# - 防止继承成员访问 protected 成员