onClick没有处理所有点击

时间:2013-06-18 07:05:54

标签: onclick addclass

我有这些功能来改变我的背景但是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;
}

 };

3 个答案:

答案 0 :(得分:0)

试试这个

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

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

答案 1 :(得分:0)

更改

onclick= mudaBG01

onclick="mudaBG01()"

答案 2 :(得分: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;
})

谢谢大家=]