Por que o jQuery .after () não encadeia o novo elemento?

Eu estou curioso para saber por que o .after () do jQuery não encadeia, ou "fornece a você", o novo elemento que você cria com ele. Parece-me que deveria, mas não sou especialista e esperava que alguém pudesse lançar alguma luz sobre o motivo de ser uma má ideia. Aqui está um exemplo para ver o que eu gostaria de .after ():

Aqui está alguma marcação:

<div id="content1">
    <p id="hello1">Hello</p>
</div>
<div id="content2">
    <p id="hello2">Hello</p>
</div>

Aqui está o que eu quero, mas isso substitui "Olá" com "World!":

$('#hello1').after('<p />').text('World!');

Isso faz o trabalho, mas com certeza é feio:

$('#hello2').after('<p />');
var $newParagraph = $('#content2 p').last();
$newParagraph.text('World');

Isso é melhor, mas eu não estou totalmente vendido: (talvez eu deveria estar?)

$('#hello1').after( $('<p />').text('World') );

Note que este é obviamente um exemplo simplificado, isto é, "<p> Mundo! </ P>" não é o que eu quero adicionar, meu problema do mundo real é mais complexo que isso.

Obrigado por qualquer pensamento.

questionAnswers(3)

yourAnswerToTheQuestion