我们在网页中可能要插入多个JS,可是如果在两个JS的代码中都使用了window.onload,可能会出现两个JS不兼容的现象。可能就显示其中一个JS,而另一个就被忽略了,也就是同一个网页中不能出现两个window.onload。这次本人在编写网页的时候就遇到了这个问题,因为如果只用一个JS就显得有点单调,如果重新编写JS代码又感觉太麻烦。这时我们就要用window.attachEvent和window.addEventListener来解决问题了。

当某一事件被触发时需要执行某个函数,在IE下可用attachEvent,在FF下则要用addEventListener。
attachEvent()有两个参数,第一个是事件名称,第二个是需执行的函数;
addEventListener()有三个参数,第一个是事件名称,但与IE事件不同的是,事件不带"on",比如"onsubmit"在这里应为"submit",第二个是需执行的函数,第三个参数为布尔值;

例如:(可以在IE和FF下分别测试):


以下是引用片段:
<input type="button" , Fun, false);
}
function Fun()
{
if(isIE)
{
alert('I\'m IE');
}
else
{
alert('I\'m Not IE');
}

}
</script>

所以我们可以直接这样编写:

以下是引用片段:
if (document.all){
window.attachEvent('onload',调用函数名)//对于IE
}
else{
window.addEventListener('load',调用函数名,false);//对于FireFox
}

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-06
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-04-14
  • 2022-12-23
  • 2021-10-26
  • 2021-09-13
  • 2022-12-23
  • 2022-12-23
  • 2021-12-28
相关资源
相似解决方案