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?

Était-ce utile?

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.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top