繁体   English   中英

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

[英]Can someone explain this JS code and error to me? Why does it fail?

我正在尝试访问一个面向公众的站点(不是我开发的站点,而是用作参考站点),但它没有加载到 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 文档?

我认为您需要首先将其包装在

$(document).ready(function{

});

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

不幸的是,您的问题太模糊,无法为您提供可靠的答案,但是快速的谷歌搜索让我明白了这一点:

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

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

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

IE 8 支持JQuery mobile 如果它是正确的版本,但这里的这一行可能是错误:

<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 函数的最后面调用 Javascript function 执行document.ready()调用。

是您在加载 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);
    }
  });
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM