我试图在迭代无序列表()时找到css显示值,但由于某种原因,FF不显示此值。这是我到目前为止所做的:
var LIs = document.getElementById('ulABC').getElementsByTagName('li');
for (var i=0; i<LIs.length; i++) {
alert('the li display value is :'+LIs[i].style.display+':');
}
我得到的只是一个空白的回答。有什么想法吗?
答案 0 :(得分:2)
LIs[i].style.display
的值完全反映了style
属性中设置的内容。它没有反映浏览器从样式表中获得的任何内容。要获取这些计算值,请使用window.getComputedStyle()
。
This link显示了他们.css()
属性的jQuery实现,它正是这样做的。请注意,在IE 9下面的IE上,您需要使用名为document.documentElement.currentStyle()
的方法,因此需要使用if..else
子句。
答案 1 :(得分:0)
如果未在线显式设置显示或使用javascript,则需要使用getComputedStyle()。它不会从样式表中选择任何东西。