2012-02-22 14 views
0

これは、簡単なjqueryの質問ですが、私は本当にJavaScriptでnoobのよ、私はあなたたちが私を助けることができると思います。アクティブクラスで「常に」<li>に第一子のパラメータを設定し設定された第1子要素

  • 場合は、基本的に私は<ul> <li>構造に必要な、シンプルです。

助けが必要ですか?

ありがとうございました。

+1

「first-child」が最初の子です。あなたは何をしようとしているのですか? – Blender

+0

uは1をクリックして、それがトップ意味アクティブ=第一子 – andresmijares25

答えて

3

:あなたが必要なの参照を持っていたら

var li = $("ul li.active"); 

、あなたは属性やinnerHTMLプロパティを設定することができます最初の親の子とその兄弟からactiveクラスを削除します。

$("ul").on("click", "li", function() { 
    var $this = $(this); 
    $this.addClass("active") 
     .prependTo($this.parent()) 
     .siblings().removeClass("active"); 
}); 
+0

こんにちはフレデリックになりますので、それはリストアクティブクラス、再オーダーを取得するときに、これは私が達成したいまさに、しかし、私はこの方法をしようとしていていますと私は結果、任意の推測を得ない? – andresmijares25

+0

これは、[このフィドル](http://jsfiddle.net/BycFP/)に私のために正常に動作しますが、 '()で' jQueryの(1.7)に最近追加されました。以前のバージョンのライブラリを使用している場合は、代わりに[delegate()](http://api.jquery.com/delegate/)を使用する必要があります。 –

+0

コード自体のリストを並べ替える機会はありますか? – andresmijares25

0

あなたが意味するか:

 

$("ul li:eq(1)").addClass("active"); 
 
0

あなたはulの最初のliへの参照を取得しようとしていますか?

var li = $("ul li:first"); 

あなたはclass="active"liへの参照を取得しようとしていますか?それはなるようにリストを並べ替え、次のコードスニペットは、クリックされたリスト項目にactiveクラスを追加します

$(li).attr("class", "active"); 
$(li).addClass("active"); 
$(li).text("abc"); 
0

この

をお試しください
<ul id="special"> 
    <li>Coffee</li> 
    <li>Tea</li> 
    <li>Milk</li> 
</ul> 


$(document).ready(function() 
{ 
$("#special li:eq(0)").addClass("active"); 
}) 

フィドルでチェックこれをhttp://jsfiddle.net/UsvRs/

0
<ul> 
    <li>list item 1</li> 
    <li>list item 2</li> 
    <li>list item 3</li> 
    <li>list item 4</li> 
    <li>list item 5</li> 
    </ul> 

上記の場合は、スクリプトの下に使用することができ、あなたのULのli構造です。

$(document).ready(function() 
{ 
$('li').eq(0).addClass("active"); 
}); 
関連する問題