Я пытаюсь сформулировать селектор для выбора набора видимых элементов. Наше приложение использует фреймворк Prototype 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>
Как видите, некоторые элементы могут иметь атрибут style, но только скрытые содержат строку "display: none;". Мне нужно выбрать видимые элементы <li>
, где видимость определяется как «не содержит display: none».
То, что я пытался далеко:
var visibleItems = $$('li[style*="display:none"]'); // Yields: [ ]
var visibleItems = $$('li[style*="display"]'); // Yields: [li, li, li, li, li], but isn't specific enough
Идеи? В идеале я хотел бы, чтобы это было как можно более компактным, но я возьму то, что смогу получить.
Да, я знаю, что jQuery может сделать это , но я не хочу вводить другую платформу в это приложение, поскольку большая часть этого уже зависит от Prototype.