Javascript 选择所有样式显示为“无”的DIV

Javascript 选择所有样式显示为“无”的DIV,javascript,prototypejs,Javascript,Prototypejs,我正在使用prototype框架选择所有具有样式display:none 我正在使用 $$(".details-wrapper > div[style*=display:'none']") 或 但它不起作用。有什么建议吗?试试看 $$(".details-wrapper > div[style*='display:none']"); 请尝试 $$(".details-wrapper > div[style*='display:none']"); 在样式属性上匹配。几乎总是

我正在使用prototype框架选择所有具有样式
display:none

我正在使用

$$(".details-wrapper > div[style*=display:'none']")

但它不起作用。有什么建议吗?

试试看

$$(".details-wrapper > div[style*='display:none']");
请尝试

$$(".details-wrapper > div[style*='display:none']");

在样式属性上匹配。

几乎总是一个坏主意-它不会匹配通过JavaScript或CSS规则设置的任何内容。在jQuery中,您可以简单地使用
:hidden
选择器。它通常会匹配通过JavaScript设置的内容,因为脚本必须在内联或样式表中设置它。至于通过样式表设置的内容,我认为没有办法匹配这些内容,除了扫描页面上的每个元素(蛮力)或扫描样式表并尝试每个可以设置
display:none
@Brilliand的选择器之外——并非所有浏览器都在属性中反映属性,因此,基于属性的选择器可能无法获取由脚本设置属性的元素。匹配样式属性几乎总是一个坏主意-它不会匹配通过JavaScript或CSS规则设置的任何内容。在jQuery中,您可以简单地使用
:hidden
选择器。它通常会匹配通过JavaScript设置的内容,因为脚本必须在内联或样式表中设置它。至于通过样式表设置的内容,我认为没有办法匹配这些内容,除了扫描页面上的每个元素(蛮力)或扫描样式表并尝试每个可以设置
display:none
@Brilliand的选择器之外——并非所有浏览器都在属性中反映属性,因此,基于属性的选择器可能无法获取由脚本设置属性的元素。您可能还希望尝试
display:none
display:none
display:none
以及。。。你明白了。可能只想分别搜索
display
none
,然后再次检查检索到的元素是否真的解析为
display:none
。参考:检查单个元素是否解析为
display:none
(对于旧IE)可以通过
currentStyle[“display”]
完成和
getComputedStyle(“display”,null)
(对于其他人)。。。第二个
显示:none
(在我的第一条评论中)是双倍行距的。可能很少见,但合法。您可能还想尝试
display:none
display:none
display:none
以及。。。你明白了。可能只想分别搜索
display
none
,然后再次检查检索到的元素是否真的解析为
display:none
。参考:检查单个元素是否解析为
display:none
(对于旧IE)可以通过
currentStyle[“display”]
完成和
getComputedStyle(“display”,null)
(对于其他人)。。。第二个
显示:none
(在我的第一条评论中)是双倍行距的。也许很少见,但却是合法的。