新手求助,教程里有解决javascript同类型程序覆盖方法的例子,我照着例子打的,为什么没出现效果
怪我咯
怪我咯 2017-04-10 18:01:13
[JavaScript讨论组]
<p>当两组程序或两个js文件同时执行的时候,后面一个会把前面一个完全覆盖掉.导致前面的window.onload完全失效了:<mark>我们可以这样来解决覆盖问题</mark></p>
<script>
window.onload = function () { //第一个要执行的事件,会被覆盖掉
    alert('Lee');
};
if ( typeof window.onload == 'function') {//判断之前是否有window.onload
        var saved = null ; //创建一个保存器
        saved = window.onload ; //把之前的window.onload保存起来
        
}
window.onload = function () { //最终一个要执行的事件
     if(saved) saved;        //执行之前的一个事件
    alert('Mr.Lee');        //执行本事件的代码
};

</script>

最后只出现了一次输出,应该是两次才对啊

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(3)
大家讲道理
 if(saved) saved;
//改成
 if(saved) saved();
//比如你定义一个函数
var test = function() {
    //do something
} 
//接下来要调用这个函数应该是
test();
//而不是
test;
PHPz
if(saved) saved;

改成

if (saved) saved();
PHP中文网

没记错的话:一个页面无论引了多少个js,只能有一个window.onload;jQuery的$(document).ready可以有多个

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号