2011-07-07 21 views
0

リンクで定義されたPHPファイルからコンテンツを取得し、div要素に解析するjQueryタブスクリプトがあります。ページが読み込まれると、既にタブが選択されており、ユーザーは別のタブを選択できます。ただし、タブ以外の場所をクリックすると、選択したタブは削除されます。なぜこれができますか?jQueryタブスクリプトの選択されたタブ

これは私の現在のjQueryのコードです:

function load(url){ 
    $.ajax({ 
     url:url, 
     success:function(message){ 
      $("#content").html(message); 
     } 
    }); 
} 

$(document).ready(function(){ 
    $("[id]").click(function(){ 
     type=$(this).attr("id"); 
     url=""+type+".php"; 
     $("[id]").removeClass("selected"); 
     $("#"+type).addClass("selected"); 
     load(url); 
     return false; 
    }); 
    $("#tab1").click(); 
}); 

これは私のHTMLコードです:

<ul> 
<li><a id="tab1" href="javascript:void(null);">Tab1</a></li> 
<li><a id="tab2" href="javascript:void(null);">Tab2</a></li> 
<li><a id="tab3" href="javascript:void(null);">Tab3</a></li> 
</ul> 

答えて

0

jqueryのセレクタは、IDタグを持つすべての要素をターゲットに述べています。 idタグを持つページの要素には、クリックハンドラが割り当てられます。どちらか、またはjavascriptでは、すべての要素にid属性があるということです。通常、null /空に設定されます。セレクタは基本的にすべてのタグを対象としています。結局、それはおおよそ同じことです。あなたが既に持っているようなコンベンションをお勧めし、tab_のような単語で各タブを開始してから、jqueryセレクタで[id^="tab_"]のようなものを使用してください。セレクタは、tab_で始まるすべての要素を取得します。

0
+1

なお、[リンク専用の答え](参照用のタブjqueryのスクリプトを使用して簡単にhttp://meta.stackoverflow.com/tags/link-only-回答)は推奨されませんので、SOの回答は解決策の検索の終点でなければなりません(時間の経過とともに古くなる傾向にある参照の途中停止)。リンクを参考にして、ここにスタンドアロンの概要を追加することを検討してください。 – kleopatra

+0

ありがとうございましたが、 –

関連する問題