$fn.insertAfter() et $fn.après() de Jquery
-
12-11-2019 - |
Question
Je comprends que $fn.insertAfter()
est utilisé pour insérer un élément après l'élément fourni en argument.Comment $fn.after()
différent d'elle?
La solution
$.fn.after()
aider insère un élément après l' cible élément, sur lequel vous l'appelez.
$('div').after('<div>new div</div>');
considérant que, $.fn.insertAfter
insère le cible élément après le nœud de vous préciser:
$('<div>new div</div>').insertAfter($('#someid'));
Ce dernier est la plupart du temps préféré, parce que vous gardez un référence pour le nouvellement créé élément et peuvent chaîne de plus de méthodes sur elle.Ainsi, par exemple:
$('<div>new div</div>')
.insertAfter($('#someid'))
.attr('foo', 'bar')
.css({
'background-color': 'red'
});
est possible.Vous ne pouvez pas le faire avec .after()
aider.La même chose est .append()
aider / .appendTo()
aider et .insertBefore()
aider / .before()
aider
Autres conseils
C'est un exemple de la même chose, la différence est le contexte de la sélection. insertAfter
insère l'élément sélectionné après le paramètre
after
insère le paramètre après l'élément sélectionné.
$('<div id="foo"></div>').insertAfter('#bar');
$('#bar').after('<div id="foo"></div>');
Citant directement à partir de la documentation:
L'
.after()
et.insertAfter()
méthodes d'effectuer la même tâche.L' les grands la différence est dans la la syntaxe—plus précisément, dans le placement le contenu et la cible.Avec.after()
, le sélecteur d'expression précédant la méthode est le conteneur après, dont le contenu est inséré.Avec.insertAfter()
, sur l'autre part, le contenu précède la méthode, soit comme un sélecteur d'expression ou comme balisage créé à la volée, et il est inséré après le conteneur cible.
Cette mentionne qu'ils exécutent la même tâche, mais ont une syntaxe différente.