Chrome框架:IE9中的访问被拒绝错误

时间:2012-07-12 23:24:25

标签: google-chrome-frame

我正在尝试在我正在构建的网站上使用Chrome-Frame。 在IE8及以下,一切正常...... 在IE9中,我收到此错误:

SCRIPT5: Access is denied.
cf-dlpage.js, line78 character 209

不知道该怎么做!

这是触发行为的条件:

<!--[if lte IE 9]>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/chrome-frame/1/CFInstall.min.js"></script>
  <style>
        body {
            overflow-y:hidden;
        }
      .chromeFrameOverlayContent {
            border:none;
            overflow:hidden;            
        }
      .chromeFrameOverlayContent iframe {
            border:none;
            overflow:hidden;
        }
      .chromeFrameOverlayCloseBar {
            display:none;
        }
      .chromeFrameOverlayUnderlay {
            background-image:url(/img/bg.png);
            opacity: 1;
            filter: alpha(opacity = 100);
        }

  </style> 
  <script type="text/javascript">
    window.onload = function() {
        CFInstall.check({
            url: "/fix/update.html",
            mode: "overlay",
            destination: "/"
        });
    };
  </script> 
  <![endif]-->

任何帮助都非常感谢!

2 个答案:

答案 0 :(得分:1)

尝试this听起来它与您的问题有关。我希望它有所帮助。 阅读来自erikwright@chromium.org的评论,是目前的最后评论。

答案 1 :(得分:0)

问题是由此引起的:

  1. 您的信息页位于www.example.com
  2. 安装例程会创建一个iframe,其中包含网址www.google.com/...
  3. iframe页面本身执行Javascript并尝试阅读window.parent,但......
  4. ...这是不允许的,因为两个框架都有不同的域。
  5. 唯一的解决方案似乎是:

    1. 创建您自己的安装脚本
    2. Google修复了他们的脚本
    3. 我浪费了一整天的时间来解决这个问题(嵌套框架,自定义脚本,通过我的服务器路由Google请求,......),直到它告诉我为什么 Google似乎忽略了这个bug :

      大多数人根本没有注意到问题。无论此错误如何,都会成功执行安装。要实际获取消息框,您必须启用Javascript调试或显示Javascript错误功能。

      你和我已经启用了这些功能,因为我们是开发人员,所以我们自然会感到害怕,但是普通的Joe不会注意到任何事情。