たとえば、私は持っています:
var my_ul = jQuery('<ul/>');
jQuery('<li/>').appendTo(my_ul);
jQuery('<li/>').appendTo(my_ul);
jQuery('<li/>').appendTo(my_ul);
jQuery('<li/>').appendTo(my_ul);
ul の最後の li にアクセスできますか?
たとえば、私は持っています:
var my_ul = jQuery('<ul/>');
jQuery('<li/>').appendTo(my_ul);
jQuery('<li/>').appendTo(my_ul);
jQuery('<li/>').appendTo(my_ul);
jQuery('<li/>').appendTo(my_ul);
ul の最後の li にアクセスできますか?
次のように実行できます。
my_ul.find('li:last');
または、jquery コンストラクターのコンテキスト パラメーターを使用することもできます。
$('li:last', my_ul);
デモを見る
これを試して
my_ul.find('li:last');
var my_ul = jQuery('<ul/>');
x1 = jQuery('<li/>').appendTo(my_ul);
x2 = jQuery('<li/>').appendTo(my_ul);
x3 = jQuery('<li/>').appendTo(my_ul);
x4 = jQuery('<li/>').appendTo(my_ul);
x4.html('I\'m last');
必要な要素にアクセスできます。
当然!
これが jQuery の背後にある本当の魔法です: セレクター。それらにはすべて目的があり、それらのいくつかは非常に強力であるため、すべてを読むことを強くお勧めします. パフォーマンス/最適化に興味がある場合は、エミュレートされた疑似セレクターについてもメモしてください。通常は遅いためです。
質問に直接答えるために、次のすべてのコードで ul の最後の項目を取得します。
my_ul.children("li:last");
my_ul.children("li").last();
読者のための演習: どちらがよりパフォーマンスが高いかを見つけてください :-)
var my_ul = $('<ul/>');
for(i=0;i<4;i++){
my_ul.append("<li> index: "+i+"</li>");
}
alert( my_ul.find('li:last').text() ); // .find() faster than constructor