2013-06-18 38 views
0

我有這些功能來改變我的背景,但onClick事件只能工作一次或四個之一不起作用,當頁面加載。 我知道「返回false」會停止函數,但是當我使用沒有它們的代碼時,背景會加載但返回原始代碼。有人可以告訴我爲什麼?onClick不能處理所有的點擊

window.onload = init; 
function init(){ 
    document.getElementById("bg01").onclick = mudaBG01; 
    function mudaBG01(){ 
    $("body").addClass("bg01"); 
    return false; 
    } 


    document.getElementById("bg02").onclick = mudaBG02; 
    function mudaBG02(){ 
    $("body").addClass("bg02"); 
    return false; 
    } 


document.getElementById("bg03").onclick = mudaBG03; 
function mudaBG03(){ 
$("body").addClass("bg03"); 
return false; 
} 


document.getElementById("bg04").onclick = mudaBG04; 
function mudaBG04(){ 
$("body").addClass("bg04"); 
return false; 
} 

}; 

回答

0

嘗試此

document.getElementById("bg04").onclick = new Function("mudaBG04()"); 

和定義所有功能mudaBG04()出init()函數的一側。

+0

背景負荷,但仍回到原來的一個= \ –

0

變化

onclick= mudaBG01 

onclick="mudaBG01()" 
+0

它不會加載背景這樣 –

0

完成。我改變了我的JS功能:

$("#bg01").click(function(){ 
$("body").css('background', 'url(../images/bg02.jpg)'); 
return false; 
}) 


$("#bg02").click(function(){ 
$("body").css('background', 'url(../images/bg03.jpg)'); 
return false; 
}) 


$("#bg03").click(function(){ 
$("body").css('background', 'url(../images/bg07.jpg)'); 
return false; 
}) 


$("#bg04").click(function(){ 
$("body").css('background', 'url(../images/bg08.jpg)'); 
return false; 
}) 

謝謝大家=]

相關問題