Au lieu de .show() et .hide() 'ing (ou .toggle() d'ailleurs), est-il possible de "basculer" un .remove() fonction?Basculer jQuery.remove()
Je réalise que .remove() supprime littéralement des éléments du DOM, il semble donc difficile de remplacer par magie les éléments supprimés une fois qu'ils sont partis, mais y a-t-il un moyen de faire semblant?
Remarque: Ils doivent être supprimés du DOM afin qu'ils soient ignorés par les lecteurs d'écran (les lecteurs d'écran AFAIK ne respectent pas les fonctions .show() et .hide()).
Merci.
--- EDIT ---
OK, .detach() pourrait fonctionner pour moi. Si mon balisage est:
<a href="#">Toggle images</a>
<p><span>Some text here</span><img src='image1.png'/><img src='image2.png'/></p>
<p><span>Some more text</span><img src='image2.png'/></p>
<p><span>Even more text</span><img src='image5.png'/><img src='image1.png'/>
<img src='image5.png'/></p>
Et en cliquant sur l'ancre, il supprimerait toutes les images, et en cliquant à nouveau serait restaurer. En utilisant .detach() comment cela fonctionnerait-il?
--- EDIT # 2 ---
Comme thenduks souligné, les lecteurs d'écran en fait font le respect display: none;
qui change ma question un peu. Je me suis retrouvé avec un simple code à bascule. Merci!
il y a une grande chance que '$ ('p'). Remove();' renverra null donc je ne pense pas 'savedNodes = $ ('p'). Remove();' fonctionnerait mais c'est le bonne idée – hunter