Quelle est la différence fonctionnelle entre ces trois jQuery
méthodes:
- détacher()
- cacher()
- retirer()
javascript
jquery
Vivek
la source
la source
detach
, jetez un œil à stackoverflow.com/questions/12058896/...Réponses:
hide()
définit ladisplay
propriété CSS des éléments correspondants surnone
.remove()
supprime complètement les éléments correspondants du DOM.detach()
est similaireremove()
, mais conserve les données stockées et les événements associés aux éléments correspondants.Pour réinsérer un élément détaché dans le DOM, insérez simplement l'
jQuery
ensemble retourné à partir dedetach()
:la source
remove
à la place dedetach
, l'exemple fonctionne toujours.remove()
-le et attachez-le à nouveau, la liaison disparaîtra et cliquer sur l'étendue ne fera rien. Si vous appelezdetach()
et rattachez, la liaison reste et le gestionnaire de clics continue de fonctionner.Imaginez un morceau de papier sur une table avec des notes écrites au crayon.
hide
-> jeter un vêtement dessusempty
-> supprimer les notes avec une gommedetach
-> prenez le papier dans votre main et gardez-le là pour vos projets futursremove
-> attrapez le papier et jetez-le à la poubelleLe papier représente l'élément et les notes représentent le contenu (nœuds enfants) de l'élément.
Un peu simplifié et pas complètement précis, mais facile à comprendre.
la source
hide()
définit l'affichage de l'élément correspondant sur aucun.detach()
supprime les éléments correspondants, y compris tout le texte et les nœuds enfants.Cette méthode stocke toutes les données associées à l'élément et peut donc être utilisée pour restaurer les données de l'élément ainsi que les gestionnaires d'événements.
remove()
supprime également les éléments correspondants, y compris tout le texte et les nœuds enfants.Cependant, dans ce cas, seules les données de l'élément peuvent être restaurées, pas ses gestionnaires d'événements.
la source
Dans jQuery, il existe trois méthodes pour supprimer des éléments du DOM. Ces trois méthodes sont
.empty()
,.remove()
et.detach()
. Toutes ces méthodes sont utilisées pour supprimer des éléments du DOM, mais elles sont toutes différentes..cacher()
Masquez les éléments correspondants. Sans paramètre, la méthode .hide () est le moyen le plus simple de masquer un élément HTML:
.vide()
La méthode .empty () supprime tous les nœuds enfants et le contenu des éléments sélectionnés. Cette méthode ne supprime pas l'élément lui-même, ni ses attributs.
Remarque
La méthode .empty () n'accepte aucun argument pour éviter les fuites de mémoire. jQuery supprime les autres constructions, telles que les gestionnaires de données et d'événements, des éléments enfants avant de supprimer les éléments eux-mêmes.
Exemple
Cela entraînera une structure DOM avec le texte Hai supprimé:
Si nous avions un certain nombre d'éléments imbriqués à l'intérieur
<div class="hai">
, ils seraient également supprimés..retirer()
La méthode .remove () supprime les éléments sélectionnés, y compris tout le texte et les nœuds enfants. Cette méthode supprime également les données et les événements des éléments sélectionnés.
Remarque
Utilisez .remove () lorsque vous souhaitez supprimer l'élément lui-même, ainsi que tout ce qu'il contient. En plus de cela, tous les événements liés et les données jQuery associés aux éléments sont supprimés.
EXEMPLE
Considérez le html suivant:
Cela se traduira par une structure DOM avec l'
<div>
élément supprimé:Si nous avions un certain nombre d'éléments imbriqués à l'intérieur
<div class="hai">
, ils seraient également supprimés. D'autres constructions jQuery, telles que les gestionnaires de données ou d'événements, sont également effacées..détacher()
La méthode .detach () supprime les éléments sélectionnés, y compris tout le texte et les nœuds enfants. Cependant, il conserve les données et les événements. Cette méthode conserve également une copie des éléments supprimés, ce qui leur permet d'être réinsérés ultérieurement.
Remarque
La méthode .detach () est utile lorsque des éléments supprimés doivent être réinsérés ultérieurement dans le DOM.
Exemple
Pour plus d'informations, visitez: http://www.scriptcafe.in/2014/03/what-is-difference-between-jquery_15.html
la source
la source