使用多个函数调用调用onload事件

时间:2014-03-14 15:33:47

标签: javascript html

我的html中有类似的东西:

<body onload='myjavascriptfunction1()'

我也希望能够使用相同的onload事件调用'myjavascriptfunction2()以及myjavascriptfunction1()'。拜托,这可能吗?

4 个答案:

答案 0 :(得分:1)

你可以这样做:

<body onload='myjavascriptfunction1();myjavascriptfunction2()'>

或创建一个函数,然后从该函数调用您想要的其他函数

function myjavascriptfunction1(){
    myjavascriptfunction2();
    myjavascriptfunction3();
}

答案 1 :(得分:0)

你只需要一个分号:

<body onload='myjavascriptfunction1(); myjavascriptfunction2()'>

此外,您实际上从未添加身体标记的>结尾。

答案 2 :(得分:0)

使用通用的OnLoad功能

<body onload='onLoad()'>

function onLoad(){
    myJSFunction1();
    myJSFunction2();
}

但更好的方法是使用addEventListener

订阅onload事件
window.addEventListener("load", myJSFunction1, false);
window.addEventListener("load", myJSFunction2, false);

JSFiddle

这使您的JS与HTML分开,并阻止您将丑陋的onLoad属性添加到body标记。

答案 3 :(得分:0)

附加Event Listeners而不是在标记中定义onload事件

  document.body.addEventListener("load", do_something(), false);

  function do_something() {
    alert("hello universe");
    //do something here
  }

有关详细信息,请参阅Event Listeners文档。如果您的事件监听器必须处理多个浏览器(如旧版IE),则可能必须定义其他事件监听器,如attachEvent。像jQuery这样的库可以方便地满足这些需求,因为您不必担心浏览器兼容性。