2012-04-25 44 views
0

我有多個鏈接顯示在同一頁面顯示我用這個相關內容,jQuery的隱藏顯示使用索引

$("#option .link").click(function(){ 
    Options=$("#option .link").index(this); 
    $("#content").hide(); 
    $("#content:eq("+Options+")").show(); 
}) 

但這不工作

回答

-1

您使用#content ID爲元素,但你應該在一個頁面只使用一個ID,所以你應該改變所有#content ID類.content

$("#option .link").click(function(){ 
    Options=$("#option .link").index(this); 
    $(".content").hide(); 
    $(".content:eq("+Options+")").show(); 
}); 

做出這個改變並嘗試...

+0

這是什麼地獄......爲什麼-1這個職位 – Dhamu 2012-04-26 07:03:02

+0

要小心;你正在使'選項'是一個隱含的全局*,這是不好的*。 'var options = $(「#option .link」)。index(this);'會更好,'var options = $(「#option .link」)。index(this);'even * even *更好(建設者的預留大寫字母)。 – Matt 2012-04-26 13:26:17

3

目前唯一能夠有id等於元素content,因爲ID是唯一的。您可能需要像.link那樣切換到課程。

另一方面,代碼中的Index是一個全局變量。 Globals是要避免的,並且真的不需要一個,因此請使用var Index

1

你的想法是對的..但你不應該使用類似的ID爲一個以上的元素。這裏,U使用#內容(似乎)超過一個元素..

帶班試試..

$("#option .link").click(function(){ 
    Options=$("#option .link").index(this); 
    $(".content").hide(); 
    $(".content:eq("+Options+")").show(); 
})