window.onload并不是一直都在工作。为什么

时间:2015-12-16 03:21:49

标签: javascript jquery html

我一直致力于更改src属性以更改javascript中的图片。我使用的是window.onload = function()而我的代码没有用。我决定取出window.onload,奇迹般地我的代码工作了。 src属性更改了页面上的图像。

我读过很多关于window.onload函数的文献,好像加载网页是绝对必要的,以便其他代码能够工作。我感到很困惑,因为在这种情况下它并不适合我。我回忆起最近我正在研究的一项大学作业,它没有使用window.onload功能。这是我使用和没有window.onload函数的脚本。有人能给我一个解释这个奇怪的解释。

  window.onload = function(){
  function myFunction(){
  document.getElementById("myImg").src = "people5.png";
  };
  };
  </script>
  </head>
 <body>
 <img id = "myImg" src="people1.png" width="240" height="240" alt="logo"/>
 <button onclick="myFunction()">Click me</button>

现在没有window.onload

  function myFunction(){
  document.getElementById("myImg").src = "people5.png";
  };

 </script>
 </head>
 <body>
 <img id = "myImg" src="people1.png" width="240" height="240" alt="logo"/>
 <button onclick="myFunction()">Click me</button>

2 个答案:

答案 0 :(得分:1)

window.onload = function(){
  function myFunction(){
  document.getElementById("myImg").src = "people5.png";
  };
};
myFunction()中的

window.onload是匿名函数的本地。当您在myFunction之外声明window.onload时,它在全局范围内定义,因此{{1}可访问事件

答案 1 :(得分:0)

 <body onload='myFunction()' >

--containerizers=docker,mesos