2011-07-07 256 views
0

我有一個jQuery選項卡腳本,它從鏈接定義的PHP文件獲取內容並將其解析爲div元素。當頁面加載時,已經選擇了一個選項卡,用戶可以選擇另一個選項。但是,當您單擊選項卡以外的任何位置時,選定的選項卡將被刪除。爲什麼會這樣呢?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屬性。它通常設置爲空/空。所以選擇器主要針對所有標籤。最後,這大致是一回事。我會建議做一個約定(就像你已經有的),並開始每個標籤用tab_這個詞,然後在jquery選擇器使用類似[id^="tab_"]。然後選擇器將獲得以tab_開頭的所有元素。

0

有一個更好的和易於使用的標籤jQuery腳本供您參考

http://creativealive.com/easy-to-use-jquery-tabs-css-jquery/

+1

注意[僅鏈接答案](http://meta.stackoverflow.com/tags/link-only-答案/信息),所以SO答案應該是搜索解決方案的終點(而另一個參考文獻的中途停留時間往往會隨着時間的推移而變得過時)。請考慮在此添加獨立的摘要,並將鏈接保留爲參考。 – kleopatra

+0

謝謝,但我發現relivent –