有人可以向我解释这个JS代码和错误吗?为什么会失败?

时间:2011-08-15 19:15:57

标签: javascript internet-explorer-8

我正在尝试访问面向公众的站点(不是我开发的站点,但被用作参考站点)并且它不会加载到IE8(这是我们的企业标准浏览器)。它在Chrome中运行良好(并非所有用户都拥有它)。我收到的错误是“res://ieframe.dll/acr_error.htm ...”。我是否必须以某种方式配置IE8来呈现它?任何和所有帮助更好地解决这个问题将非常感激。

我通过“查看源代码”查看了源代码,我看到了以下内容:

<!DOCTYPE html> 
<html> 
   <head> 
   <meta charset="utf-8"> 
   <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> 

    <link rel="stylesheet" type="text/css" href="http://code.jquery.com/mobile/1.0a2/jquery.mobile-1.0a2.min.css" /> 
    <link rel="stylesheet" type="text/css" href="/css/mobile.css" /> 
    <link rel="stylesheet" type="text/css" href="/css/main.css" /> 

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script> 
    <script type="text/javascript" src="/js/plugins/jquery.scroll.js"></script> 
        <script type="text/javascript" charset="utf-8"> 
        $(document).bind("mobileinit", function(){
          $.extend(  $.mobile , {
            ajaxFormsEnabled : false,
                ajaxLinksEnabled : false
          });
        });
        </script> 


    <script type="text/javascript" src="http://code.jquery.com/mobile/1.0a2/jquery.mobile-1.0a2.min.js"></script> 

上面的代码片段是否足以帮助提供一些建议,还是需要整个HTML文档?

4 个答案:

答案 0 :(得分:3)

我认为你需要先将其包装在

$(document).ready(function{

});

段,否则你可能遇到各种各样的麻烦。

答案 1 :(得分:1)

不幸的是,你的问题太模糊了,无法为你提供可靠的答案,但是快速的谷歌搜索使我对此有所了解:

http://answers.microsoft.com/en-us/ie/forum/ie8-windows_other/resieframedll-error-in-ie-8/7f657540-474f-4587-b661-c3ffbb1aed06

所以我怀疑你安装ie8是个问题。如果没有,请提供更多信息:)

答案 2 :(得分:0)

我怀疑jQuery Mobile对IE8有很多支持。它是基于移动浏览器构建的,因此主要的渲染引擎是Webkit(Chrome)和Gecko(Fx)。就这么简单。

答案 3 :(得分:0)

如果JQuery mobile是正确的版本,则supported by IE 8This,但这一行可能是错误:

<script type="text/javascript" charset="utf-8"> 
        $(document).bind("mobileinit", function(){
          $.extend(  $.mobile , {
            ajaxFormsEnabled : false,
                ajaxLinksEnabled : false
          });
        });
        </script> 

<script type="text/javascript" src="http://code.jquery.com/mobile/1.0a2/jquery.mobile-1.0a2.min.js"></script> 

在导入移动脚本之前,您正在使用移动设备调用某些内容。您需要首先导入您的移动脚本,然后在您将运行所有初始化函数的html页面的非常结束处执行document.ready()调用Javascript函数。

{{3}}是您在加载JQuery Mobile之前要运行的少数几个调用之一

//run this script after jQuery loads, but before jQuery Mobile loads, and may help solve your issue

//customize jQuery Mobile to let IE7+ in (Mobile IE)
$(document).bind("mobileinit", function(){
  $.extend( $.mobile , {

  //extend gradeA qualifier to include IE7+
    gradeA: function(){
     //IE version check by James Padolsey, modified by jdalton - from http://gist.github.com/527683
var ie = (function() {
var v = 3, div = document.createElement('div'), a = div.all || [];
while (div.innerHTML = '<!--[if gt IE '+(++v)+']><br><![endif]-->', a[0]);
return v > 4 ? v : !v;
}());

     //must either support media queries or be IE7+
     return $.support.mediaquery || (ie && ie >= 7);
    }
  });
});