2012-08-06 96 views
1

我的目標是獲得類似http://corkboard.me/GlJTVkD34A的東西,當改變背景的按鈕被點擊時,音符的背景和按鈕中的圖像都被改變。 在momemt我已經能夠得到完全相同的東西,在筆記上的onclick事件,在頂部彈出的div,但我試圖通過將所有的類放入像下面這樣的數組中來更改背景,並且它沒有沒有工作。 我仍然不知道如何使按鈕圖像與音符的背景同時變化。jquery切換多個類

//nbg is the button above that is to be cliked to change the backgound 
var nbg = $('#nbg'); 
var count = 0; 
nbg.each(function() { 
    var thisnotice = $(this); 
    thisnotice.click(function() { 
    var notice_classes =['changeablenbg_yellow','changeablenbg_green','changeablenbg_pink','changeablenbg_purple','changeablenbg_blue']; 
     if(notice_classes[count] === "changeablenbg_blue") { 
     var count = 0 
     } 
    //#box is the note div itself 
    $('#box').toggleClass(notice_classes[count]); 
    count++; 
    }); 
}); 

我也嘗試循環使用for循環,但無濟於事陣列.. 可別人誰知道請指導我就這樣做。如果我沒有解釋得很好,我很抱歉,請問你不明白的事情。

+0

一些修復的東西,如果你計劃迭代你不能重新計數迭代之前。這是目前發生的情況。 設置計數 – VoronoiPotato 2012-08-06 13:33:46

+0

嗨VoronoiPotato,但我只重置它只有當數組中的值是數組中的最後一個值。我確實刪除了整個if語句,並且它首先切換了所有內容,並且僅次於數組中的第3個和第4個。 – Saff 2012-08-06 13:39:46

+0

augh我失去了我的評論:(在if語句中刪除了var的數量,同時helmus毀了你的帖子。bad helmus。 – VoronoiPotato 2012-08-06 13:41:03

回答

1

你已經在你的代碼中發生了一些奇怪的事情,但最大的問題是你正在切換哪一個就像一個燈開關。按下它,它會打開並保持打開狀態。再按一次,它就會關閉。在這裏你按下它並打開並切換到下一個顏色,然後你按下,然後打開第一個。

然後,你有雙計數問題。你正在逐步完成每個NBG的每種顏色,但只是改變方框。重置本地計數,但不是較大的計數。

我最好的建議是,像計算機運行它一樣,逐行瀏覽每行代碼,並思考這個特定行是做什麼的。它是否按照我認爲的那樣做?

對您有幫助嗎?

+0

非常感謝你,我已經添加了「-1」部分,它似乎是我的問題的第一部分完成哈哈你有任何想法我怎麼可以去改變按鈕的圖像同時? – Saff 2012-08-06 14:18:44

+1

只需將圖像背景添加到不同類的CSS中即可。 – VoronoiPotato 2012-08-06 14:20:31