情况: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/
<iframe src="http://endorkins.com/test-iframe.html"></iframe>
<!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中的结果(注意在控制台中省略此消息):