一  多个window.onload冲突

在一个页面中有两个JavaScript 分别都用到了window.onload
一个是:window.onload=externallinks,另一个是:window.onload=beijing2008
这样就造成了一个JavaScript
运行不了。

写成这样就可以了window.onload=function(){externallinks();beijing2008();}

还有一种方法,举个例子

<script type="text/javascript">
function
$(obj){return document.getElementById(obj);}
window.onload=function(){
   onload2();
   onload3();
}
function
onload2(){
   $("aa").onclick=function dd(){alert("haha")};
}
function
onload3(){
   alert("加载完成");
}</script>

第三种方法:

用window.attachEvent和 window.addEventListener来解决问题了。
当某一事件被触发时需要执行某个函数,在IE下可用attachEvent,在FF下则要用addEventListener。

attachEvent()有两个参数,第一个是事件名称,第二个是需执行的函数;

addEventListener()有三个参数,第一个是事件名称,但与IE事件不同的是,事件不带"on",比如"onsubmit"在这里应为"submit",第二个是需执行的函数,第三个参数为布尔值;

例如:(可以在IE和FF下分别测试):
<input type="button" id="ie" value=" IE " />

<input type="button" id="ff" value=" FF " />

<script type="text/javascript">

var isIE = (document.all && window.ActiveXObject && !window.opera) ? true : false;

if(isIE)
{

 document.getElementById(’ie’).attachEvent("onclick", Fun);
}
else

{
 document.getElementById(’ff’).addEventListener("click", 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
}

二  window.onload 与body onload冲突

onload事件是window对象才有的,<body onload="func">这样设置只是为了方便,其实仍然是window.onload=func,且window.onload只允许指定一次,冲突是必然的;如果要指定多个,同上的方法

JS中多个onload冲突解决办法的更多相关文章

  1. js中toFixed精度问题的解决办法

    toFixed() 方法可把 Number 四舍五入为指定小数位数的数字.例如将数据Num保留2位小数,则表示为:toFixed(Num):但是其四舍五入的规则与数学中的规则不同,使用的是银行家舍入规 ...

  2. 记录js中的兼容问题及解决办法

    1.获取非行内样式的兼容问题: 2.获取事件对象的兼容问题: 3.事件冒泡的兼容: 4.keyCode的兼容问题: 5.处理默认事件的兼容问题: 6.事件的绑定兼容问题:

  3. Android中View类OnClickListener和DialogInterface类OnClickListener冲突解决办法

    Android中View类OnClickListener和DialogInterface类OnClickListener冲突解决办法 如下面所示,同时导入这两个,会提示其中一个与另一个产生冲突. 1i ...

  4. SVN版本冲突中 Files 的值“ < < < < < < < .mine”无效路径中具有非法字符的解决办法

    .NET 中 SVN版本冲突中 Files 的值“ < < < < < < < .mine”无效路径中具有非法字符的解决办法: 一. 1.将项目逐个进行编译, ...

  5. js中style.display=""无效的解决方法

    本文实例讲述了js中style.display=""无效的解决方法.分享给大家供大家参考.具体解决方法如下: 一.问题描述: 在js中我们有时想动态的控制一个div显示或隐藏或更多 ...

  6. 在JSP中使用jQuery的冲突解决(收集整理)

    在JSP中使用<jsp:include page="somethingPage.jsp"></jsp>来嵌套页面的时候,会出现jQuery之间的冲突 解决办 ...

  7. Git应用--04遇到冲突解决办法git stash(转载)

    git merge git pull时候遇到冲突解决办法git stash https://www.cnblogs.com/juandx/p/5362723.html 在使用git pull代码时,经 ...

  8. Eclipse编辑jsp、js文件时卡死现象的解决办法汇总

    使用Eclipse编辑jsp.js文件时,经常出现卡死现象,在网上百度了N次,经过N次优化调整后,卡死现象逐步好转,具体那个方法起到作用,不太好讲.将所有用过的方法罗列如下: 1.取消验证 windo ...

  9. npm中npm install 始终出错解决办法

    npm中npm install 始终出错解决办法 错误信息: C:\Windows\System32>npm install -g gulp npm ERR! Windows_NT 6.1.76 ...

随机推荐

  1. openwrt opkg update wget returned 4 wget returned 1

    最近在正捣鼓mt7620芯片的路由器,刷入openwrt Pandora系统以后想装wifidog实现web认证. 我用我自己的一个水星的路由器PPPOE拨号,通过水星的lan口连接网线到我openw ...

  2. js事件对象--DOM中的事件对象/IE中的事件对象/跨浏览器的事件对象

    事件对象    在触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含着所有与事件有关的信息.包括导致事件的元素.事件的类型,以及其他与特定事件相关的信息.例如,鼠标操作导致的事件对 ...

  3. PHP程序缓存之文件缓存处理方式

    PHP程序缓存之文件缓存处理方式在开发程序过程中,缓存的设置大大提升程序效率,减小数据库负载.基本配置缓存和常规配置缓存 基本配置缓存在项目开发中类似这样子的格式: 文件:config.php $CF ...

  4. XML3_XML元素和节点的具体解释

    就像一个树状的目录.可以把第一行当作它扎根的“土地”.XML文件是由节点构成的.它的第一个节点为“根节点”.一个XML文件必须有且只能有一 个根节点,其他节点都必须是它的子节点.我们在FLASH里使用 ...

  5. 搭建LNMP发布ecshop系统及压测启用opcache缓存与否的情况

    安装环境:CENTOS6.5,nginx1.6.2,php-5.5.18,mysql5.5.38 在安装软件之前安装epel源,就可以直接用yum安装libmcrypt,mhash,mcrypt等ph ...

  6. 读《CSCW的一种建模与实现方法》

    这篇论文为我们描述了作者构建的一种基于交互.活动.协作三层结构的协同工作模型,并提出了一种采用“镜头焦点”和“自由交互”相结合的协作模型实现方法. 计算机支持的协同工作就是利用计算机技术将时间上分离. ...

  7. 黑马程序员-------.net基础知识四

    常量(静态常量------compile-time) 语法:const 类型 常量名 =常量值: 例: [csharp] view plaincopyprint? { const double PI= ...

  8. Spring之Spring MVC

    Spring调配半天没搞定,原来是web.xml应该放在WEB-INF的目录下,而不是webcontent目录下: java.lang.ClassNotFoundException: org.spri ...

  9. Net Core Docker

    Net Core Docker轻量级的web框架   .net core现在已经有了大的发展,虽然笔者现在已经从事python开发,但是一直在关注.net的发展,在逛博客园的时候,发现有大家都会提到N ...

  10. LightOj_1321 Sending Packets

    题目链接 题意: 给一个数据大小为S的数据包, 每一次发送需要K秒(单向),现在要从节点0 发送到节点 n-1. 其中有n - 1条路径, 每条路径都有一个传输成功率. 问传输成功所需最小时间的期望. ...