1

残念ながら最後の機能をサポートしていない1.3.2ライブラリを使用する必要があります。これにより、関数が失敗します。

$op.last().next().after($op);

「$op.lastは関数ではありません」

デモ:

http://jsfiddle.net/uscyH/

私は純粋なjsでこの機能を書き直すことに失敗しました、何か提案はありますか?.first()も必要になることに注意してください。ただし、.last代替コードからそれを推定できると想定しています。どうもありがとう-

4

5 に答える 5

11

:last1.0以降に存在していたセレクターを使用できます。

$op.filter(':last')
于 2012-05-18T13:19:19.463 に答える
5

最後の要素を取得するには、次のようにします。

$op.slice( -1 )

ライブデモ: http: //jsfiddle.net/uscyH/4/

jQuery.slice()メソッドは、配列のJavaScript .slice()メソッドの後にパターン化されています。それが模倣する機能の1つは、startまたはend パラメーターとして負の数を渡す機能です。負の数が指定されている場合、これはセットの先頭ではなく、セットの末尾から始まる位置を示します。

ソース:http ://api.jquery.com/slice/


最初の要素を取得するには、次のようにします。

$op.eq( 0 )

ライブデモ: http: //jsfiddle.net/uscyH/5/

于 2012-05-18T13:22:44.767 に答える
1

$opオプションのコレクションであると仮定して、以下を使用してコレクションの最初のDOM要素を取得します。

var first = $op[0];

そして最後の使用:

var last = $op[$op.length-1];
于 2012-05-18T13:20:17.210 に答える
1

この方法で最後または最初のアイテムを見つけることができたようです http://jsfiddle.net/uscyH/3/

alert("Last is: "+$("option:last").html()+" and first is: "+$("option:first").html());​

更新:今から選択できるアイデアがたくさんあるようです。好きなアプローチを自由に使用してください。このアプローチは、配列に既に格納されているように見えるリストを操作する代わりに2つのDOMクエリを実行するため、おそらく最速のアプローチではありません。これらのバージョンでさえ、jQueryがいかに強力であったかを見るのは素晴らしいことです。みんなのアイデアをありがとう!

于 2012-05-18T13:20:55.030 に答える
0
$($op[$op.length-1]).next().after($op);

jqueryを拡張して、独自の最後のメソッドを作成することもできます。

于 2012-05-18T13:21:01.283 に答える