jquery – 防止“SCRIPT5:访问被拒绝”错误在IE

前端之家收集整理的这篇文章主要介绍了jquery – 防止“SCRIPT5:访问被拒绝”错误在IE前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
情况:A.com上的A网页包含B.com上包含B网页的IFrame。页面B使用jQuery 1.10.1,不需要与页面A通信。

不管这个事实,在IE9和IE10,jQuery生成“SCRIPT5:访问被拒绝”。错误,似乎拒绝执行任何jQuery。我不需要跨域通信,AJAX请求等,但我需要jQuery加载和执行没有错误页面B.

有没有办法防止这种错误出现(并禁止代码执行)在IE9和IE10? (FYI,其他浏览器类似地生成“访问被拒绝”错误,但它们不妨碍代码执行)

更新:

jsFiddle:http://jsfiddle.net/86q5k/4/

主机页面内容是(来自jsFiddle):

<iframe src="http://endorkins.com/test-iframe.html"></iframe>

iFramed页面内容是:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.10.1.min.js"></script>

    <script type="text/javascript">
        $(document).ready(function() {
            console.log('Hello!  Congratulations.  Your browser is neat,and doesn\'t sniff glue! (http://bit.ly/12QTvTT)');
        });
    </script>
</head>
    <body>
    </body>
</html>

Chrome中的结果(请注意控制台中的消息):

IE 9.0.8112中的结果(注意在控制台中省略此消息):

解决方法

我找到了一个解决方法。这似乎是一个bug(“功能”?)在jQuery 1.10.1。使用jQuery 1.10.0,错误不再发生:

http://jsfiddle.net/86q5k/5/

<iframe src="http://endorkins.com/test-iframe-1.10.0.html"></iframe>

奇怪。很奇怪。如果任何人知道为什么这是发生在1.10.1的原因,以及如何解决它,我(和jQuery minions全球各地)肯定会很感兴趣知道! 原文链接:https://www.f2er.com/jquery/184260.html

猜你在找的jQuery相关文章