2013-10-09 35 views
0

我對JavaScript不太好,但認爲這是可行的,可以使用你的幫助。Javascript:將隨機背景顏色分配給懸停時的圖像

我有一個名爲.thumbs的div類,並且這個div裏面都是一個lightbox庫的縮略圖(這些縮略圖也是鏈接)。

圖像具有填充和邊框,因此您可以在填充中看到圖像的背景色。

我想要一個腳本,它將五個隨機顏色分配爲這些圖像上的每個背景顏色:hover。

我認爲這是最好的,如果這些顏色只在頁面加載時分配一次,而不是每次圖像懸停時分配一個新的隨機顏色。

我試圖調節我發現這裏的腳本:https://stackoverflow.com/a/18259491/2860129

我改變了它從.random到.thumbs IMG,和腳本分配的顏色與圖像的背景預期。然而,添加任何類型:懸停到它打破它,什麼也沒有發生。有沒有一個我需要添加:懸停的地方,或懸停行動是否需要在javascript中用onmouseover或類似的東西來定義..?

此外,我希望背景顏色留下來,一旦圖像被點擊,直到另一個圖像被點擊/選擇。如果任何人都可以添加到這個代碼,以便連續不會有兩個相同的顏色,那就太棒了。 (我刪除了「從數組中刪除顏色,所以它不能再次使用」部分)。

感謝任何能夠幫助的人,我想這些都是非常簡單的問題,但我非常感激。

回答

0

與jQuery

$(".thumbs").hover(function() { 
color = new Array(1,1,1).map(function(val) { return ~~(Math.random()*255); }).join(",") 
return "rgb(" + color + ");"; 
}); 
+0

我不能讓這個在所有的工作。我檢查,以確保jquery被加載,它是。我甚至刪除了你的代碼,並嘗試使用這個簡單的小腳本,甚至沒有任何事情發生(http://www.w3schools.com/jquery/tryit.asp?filename=tryjquery_event_hover)有什麼問題? – user2860129

+0

什麼沒有發生?懸停時顏色發生變化,然後按照您的指定變爲粉紅色。 – Jere

+0

我的意思是當我將該段落懸停腳本添加到我的頁面並進行測試時,它不起作用,並且段落顏色在懸停時不會更改。我認爲這是相關的,因爲如果這個不相關的腳本也不能在我的頁面上工作,那可能表明我實際上想要使用的腳本不能工作的問題/原因。 – user2860129