我试图制定一个选择器来选择一组可见元素。我们的应用程序使用原型JavaScript框架1.6.0.3版本。
我正在使用的标记如下:
<ul>
<li style="display:none;">1 Hidden</li>
<li style="display:none;">2 Hidden</li>
<li style="">3 Visible</li>
<li style="display:none;">4 Hidden</li>
<li style="display:none;">5 Hidden</li>
<li style="display:none;">6 Hidden</li>
<li>7 Visible</li>
<li style="">8 Visible</li>
</ul>如您所见,一些元素可能有一个样式属性,但只有隐藏的元素包含字符串"display:none;“。我需要选择可见的<li>元素,其中可见性被定义为“不包含显示:无”。
我想要做的是:
var visibleItems = $$('li[style*="display:none"]'); // Yields: [ ]
var visibleItems = $$('li[style*="display"]'); // Yields: [li, li, li, li, li], but isn't specific enough想法?理想情况下,我希望这个尽可能紧凑,但我会得到我能得到的。
是的,我知道这个jQuery可以做到这一点,但是我不想在这个应用程序中引入另一个框架,因为它大部分都依赖于原型。
发布于 2009-04-28 05:34:03
您可以使用findAll函数过滤这些项:
var notVisible = $$('li').findAll(function(el) { return !el.visible(); });https://stackoverflow.com/questions/796273
复制相似问题