2

$fn.insertAfter()引数として指定された要素の後に要素を挿入するために使用されることを理解しています。それとどう$fn.after()違うの?

4

4 に答える 4

4

$.fn.after()helpは、呼び出し先のターゲット要素の後に要素を挿入します。

$('div').after('<div>new div</div>');

一方、$.fn.insertAfter指定したノードの後に​​ターゲット要素を挿入します。

$('<div>new div</div>').insertAfter($('#someid'));

新しく作成された要素への参照を保持し、さらに多くのメソッドをチェーンできるため、後者が主に好まれます。たとえば、次のようになります。

$('<div>new div</div>')
   .insertAfter($('#someid'))
   .attr('foo', 'bar')
   .css({
      'background-color': 'red'
   });

可能です。.after()helpでそれを行うことはできません。.append()help / .appendTo()help.insertBefore()help / helpも同じです.before()

于 2011-02-11T16:27:58.833 に答える
2

これは同じものの例です。違いはセレクターのコンテキストです。insertAfterパラメータの後に選択した要素を挿入します 選択した要素の後にパラメータを after挿入します。

$('<div id="foo"></div>').insertAfter('#bar');
$('#bar').after('<div id="foo"></div>');
于 2011-02-11T16:28:57.750 に答える
1

ドキュメントから直接引用:

.after()メソッドとメソッドは.insertAfter() 同じタスクを実行します。主な違いは構文にあります。具体的には、コンテンツとターゲットの配置です。では .after()、メソッドの前にあるセレクター式がコンテナーであり、その後にコンテンツが挿入されます。.insertAfter()一方、 の場合、コンテンツは、セレクター式またはオンザフライで作成されたマークアップとして、メソッドの前にあり、ターゲット コンテナーの後に挿入されます。

于 2011-02-11T16:28:19.260 に答える
0

これは、同じタスクを実行しますが、構文が異なることを示しています。

于 2011-02-11T16:28:20.257 に答える