J'essaye de formuler un sélecteur pour sélectionner un ensemble d'éléments visibles. Notre application utilise le framework JavaScript Prototype, version 1.6.0.3.PrototypeJS: Sélection des éléments visibles
Le balisage je travaille est comme suit:
<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>
Comme vous pouvez le voir, certains éléments peut avoir un attribut de style, mais seulement ceux qui sont cachés contiennent la chaîne « display: none; ". Je dois sélectionner les éléments <li>
qui sont visibles, où la visibilité est définie comme "ne contient pas display: none".
Ce que j'ai essayé de loin:
var visibleItems = $$('li[style*="display:none"]'); // Yields: [ ]
var visibleItems = $$('li[style*="display"]'); // Yields: [li, li, li, li, li], but isn't specific enough
Idées? Idéalement, je voudrais que ce soit aussi compact que possible, mais je vais prendre ce que je peux obtenir.
Oui, je sais que jQuery can do this mais je ne veux pas introduire un autre cadre dans cette application, car beaucoup de choses dépendent déjà de Prototype.
bien fait. Merci pour la suggestion! –
De rien! – CMS
J'ai la même question, et cette réponse ne fonctionnera pas si les éléments ont été cachés par CSS. Dans ce cas, la fonction les renvoie comme visibles. Je cherche toujours et réponds ... – Lennon