Tem jQuery tido uma abordagem para trás para encadeamento de método?
-
22-07-2019 - |
Pergunta
É só eu que encontrar o seguinte código intrinsecamente para trás?
Eu estou usando desta postagem como referência.
// create the inner div
var $inner = $("<div>inner</div>")
// append it to a new outer div
.appendTo("<div>outer</div>")
// next change the jQuery chain to the "outer" div
.parent()
// append the outer div to the body
.appendTo("body")
// finally, go back to the last destructive command,
// giving us back a pointer to the "inner" div
.end();
A minha abordagem inicial teria sido agarrar o corpo , em seguida, acrescentar um externo para o corpo, e em seguida, acrescentar um interior para o exterior.
Aproximando-lo para trás e, em seguida, pulando a hierarquia com coisas como parent ()
apenas me parece um pouco curioso ...
Solução
Você pode fazê-lo para o outro lado também:
$('body').append('<div>outer</div>').append('<div>inner<div>');
mas que vai deixar você em body
Para acabar em inner
você precisa:
$('body').append('<div>outer</div>').append('<div>inner<div>')
.find('div:contains(inner)');
Outras dicas
A coisa com jQuery é, você pode fazer o que quiser com ele. Se esse estilo particular não combina com você, você não tem que usá-lo.
Acho método de encadeamento de ajuda em muitos casos, mas no caso particular você abrir eu faria algo diferente -. Concordo que não é muito clara
Não é verdade, tudo depende do que você deseja cadeia depois, usando appendTo dá acesso ao novo elemento ao invés do elemento que você anexado a.