2010-06-01 57 views
0

我是jquery的新手,除此之外,我覺得我的腦凍結了。如何將var/id與類匹配

我有一些鏈接與不同的id。我想將點擊的鏈接與相應類的div相匹配,以便div適當地顯示/隱藏/切換。

我:

<script type="text/javascript"> 
$(document).ready(function() { 
$('.folioBox').hide(); 

$('a.interface').click(function(){ 
     var currentId = $(this).attr('id'); 
     var currentBox = $('.folioBox .' + currentId); 

     $(currentBox).toggle(400); 

     }); 
}); 
</script> 


<a class="interface" id="apple">Apple flavor</a> 
<a class="interface" id="banana">Banana flavor</a> 
<a class="interface" id="cherry">Cherry flavor</a> 

<div class="folioBox apple">content</div> 
<div class="folioBox banana">content</div> 
<div class="folioBox cherry">content</div> 

我只是無法得到它的工作,我想不出我是否會用最好的匹配或查找或過濾器。

一些援助將不勝感激!

+0

非常感謝cletus! – circey 2010-06-01 03:06:47

回答

1

嘗試:

$("a.interface").click(function() { 
    $("div.followBox." + this.id).toggle(400); 
    return false; 
}); 

沒有必要讓它比這更復雜。如果有多個匹配,那麼他們都會被切換。

注意:我已經讓點擊處理程序return false停止了所遵循的鏈接。根據您在href屬性中的含義,頁面可能實際上正在刷新,這就解釋了爲什麼它看起來沒有工作。

+0

謝謝cletus!我知道必須有更優雅的方式來做這麼簡單的事情!咄。 – circey 2010-06-01 03:06:07

0

現在只是看着它,但你有沒有嘗試做最後的返回false,因爲你正在打錨?

讓我知道如果這個工程,我會停止調試這一端。

編輯

擺脫了兩個類之間的空間。

var currentBox = $('.folioBox.' + currentId);