0

我有这些功能来更改我的背景,但 onClick 事件只工作一次,或者在页面加载时这四个事件之一不起作用。我知道“return false”会停止这些功能,但是当我使用没有它们的代码时,后台会加载但会返回到原始的。有人可以告诉我为什么吗?

 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;
}

 };
4

3 回答 3

0

Done. I changed my JS functions to:

$("#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;
})

thank you all =]

于 2013-06-18T22:11:03.137 回答
0

尝试这个

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

并在 init() 函数之外定义所有函数 mudaBG04()。

于 2013-06-18T07:29:27.570 回答
0

改变

onclick= mudaBG01

onclick="mudaBG01()"
于 2013-06-18T07:32:03.900 回答