2

次のタイプの構成を使用して、jQuery1.9.1を使用して切断されたDOM要素を構成しています。

$("<div/>").after("<p></p>");

ドキュメント(http://api.jquery.com/after/)によると、これはdivと段落で構成されるjQueryセットをこの順序で返すことになっています。代わりに、私はちょうどdivを取得しています。http://bugs.jquery.com/ticket/8759http://bugs.jquery.com/ticket/10517のような動作を参照するバグレポートを少なくとも2つ見つけましたが、どちらも修正されたとされています。 1.9.1。この場合ですか?または、このメソッドが切断された要素でどのように機能するかを誤解していますか?

4

1 に答える 1

0

jQuery 1.9 Upgrade Guideによると、切断されたノードには特別なケースの処理が.after()なく、メインのドキュメントにはまだ含まれていません。あなたが言及したバグは、特殊なケースに関する限り、氷山の一角にすぎません。

ユースケースが何であるかはわかりませんが、時間の経過とともにいくつかの切断された要素を作成していて、それらを特定の順序にしたい場合は、プレーンな古い JavaScript 配列でそれらを作成し、それらを一度に追加します。必要に応じて、jQuery を使用してそれらを作成することもできます。

var x = [ $("<div/>")[0], $("<p/>")[0] ]; $(x).appendTo("body");

于 2013-03-17T14:33:31.750 に答える