0

親要素のすべての子要素(最初のものを除く)を選択したいのjQueryですが、以下があります..

$("li:not(:first-child)");

しかし、特定の親だけにそれを適用する方法がわかりませんID。このようなものは機能しますか?

$('#myID').("li:not(:first-child)");

もしそうなら、それぞれのタグのに要素を追加したいと思います。<li>私はこれを行うことができますか?

$('#myID').("li:not(:first-child)").before('<li>Test</li>');

動作していないため、上記の何かが間違っていると思います。

4

4 に答える 4

5

閉じて、セレクターコンテキストを渡すだけです:

$("li:not(:first-child)", "#myID")

http://api.jquery.com/jQuery/

jQuery( selector [, context] )

selector: A string containing a selector expression

context: A DOM Element, Document, or jQuery to use as context

編集: 私の最初の答えは、子供の li 内に li がないことを前提としていました。厳密に子のみを選択したい場合は、次を使用します>

$("#myID > li:not(:first-child)") 
于 2012-08-22T09:21:42.387 に答える
1

シンプル::gt() ヘルプセレクターの使用:

次のようにします:デモフィドル

$("#myID li:gt(0)").before('<li>Test</li>');

速度が気になる場合:):

$("#myID").find("li:gt(0)").before('<li>Test</li>');

または好き:デモフィドル

$("#myID li:not(:first-child)").before('<li>Test</li>');
于 2012-08-22T09:24:57.083 に答える
1

さまざまな解決策があります:

$("li:not(:first-child)", "#myID"); // see @SiGanteng answer

$("#myID li:not(:first-child)");

$("#myID").find("li:not(:first-child)");
于 2012-08-22T09:25:12.203 に答える
1

または要素で#myIDあると仮定すると、すべての子を取得する別の方法が考えられますが、最初の方法は次のとおりです。ulol

$('#myID').children().slice(1)
于 2012-08-22T10:39:46.450 に答える