2011-03-09 41 views
1

我試圖製作一個導航菜單,當單擊鏈接時,將內容加載到隱藏的div中,然後顯示隱藏的div,然後更改列表項的類。如果再次單擊相同的鏈接,則該類將恢復到之前的狀態,然後內容div將隱藏起來。添加/刪除Jquery中的類時遇到的問題

這裏是一個網址 視圖出處:http://www.scottjraney.com/javatest/

這裏是Jquery的

$(document).ready(function(){ 

    $("a.1").click(function(){ 
     $("div#hidden").load("/javatest/content1.html"); 
     $("div#hidden").slideDown(); 
     $("a").removeClass("1").addClass("1-change"); 
    }); 
    $("a.1-change").click(function(){ 
     $("div#hidden").slideUp(); 
     $("a").removeClass("1-change").addClass("1"); 
    }); 
}); 

我怎樣才能得到這個工作?

回答

-1

請勿嘗試用數值開始您的類名稱。 FF和IE用於此失敗。這不是嚴格無效 - 但可能會導致問題。

1

這是因爲您使用.click()函數而不是.live('click')。 live()方法允許任何元素(甚至將來創建的東西)將該偵聽器附加到它。

當頁面加載時,沒有'1-change'元素,所以它沒有任何東西可以附加到監聽器上。

+0

我很感激幫助,我是jquery的新手(我相信這很明顯)。我繼續前進,添加了.live('click')函數並將其應用於其他鏈接,似乎正在接近工作。但是在點擊鏈接之後,它開始變得陌生。這是一個URL http://www.scottjraney.com/javatest/ – 2011-03-09 22:39:03

+0

也因爲你使用$(「a」),而不是使用$(this) – helloandre 2011-03-10 03:23:48