为了账号安全,请及时绑定邮箱和手机立即绑定

在ie下还是会刷新页面呀,大家也帮我测试一下,帮我看一下哪有问题

/**
* Created by Administrator on 2015/11/24.
*/
var myReady = function(fn){
   //对于现代浏览器,对DOMContentLoaded事件的处理是采用标准的事件绑定方式
   if(document.addEventListener){//通过能力检测区分
       document.addEventListener("DOMContentLoaded", fn(), false);
   }else{
       IEContentLoaded(fn);
   }
   //IE下模拟定义DOMContentLoaded
   function IEContentLoaded(fn){
       var d = window.document; //将dom缓存在一个变量里
       var done = false;
       //只执行一次的回调函数 init()
       var init = function(){
           if(!done){
               dan = true;
               fn();
           }
       };
       (function(){//立即调用表达式
           try{
               //DOM树还未创建完之前会抛出错误
               d.documentElement.doScroll('left');
           } catch(e){
               //延迟再试一次
               setTimeout(arguments.callee,50);
               return; //实现递归
           }
           // 到没有错误就表示DOM创建完毕,然后立即执行回调函数
           init();
       })();
       //监听document的加载状况
       d.onreadystatechange = function(){
           //如果用户是在domReady之后绑定的函数,就立即执行
           if(d.readyState == "complete"){
               d.onreadystatechange = null;
               init();
           }
       };

   }
};

正在回答

2 回答

1、我并没有看到你在哪儿定义了一个变量叫做,蛋

     dan

     var init = function(){
           if(!done){
               dan = true; // 这个蛋是从哪儿来的 ???
               fn();
           }
       };


2、 document.addEventListener("DOMContentLoaded", fn(), false);

应该写成

    document.addEventListener("DOMContentLoaded", fn, false);

1 回复 有任何疑惑可以回复我~
#1

qq_东东_3 提问者

非常感谢!
2015-11-24 回复 有任何疑惑可以回复我~

找到问题了,谢谢

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

在ie下还是会刷新页面呀,大家也帮我测试一下,帮我看一下哪有问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信