Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery跨域iframe脚本_Jquery_Cross Domain - Fatal编程技术网

jQuery跨域iframe脚本

jQuery跨域iframe脚本,jquery,cross-domain,Jquery,Cross Domain,我试图访问加载外部URL的iframe的DOM。当然,由于跨域安全性,我会收到一个“权限被拒绝”错误。我怎样才能做到这一点?我看到了json(但我无法从外部源代码中获取json字符串)和HTML5 postmessage 您可以在以下网站现场观看: 代码是: $(document).ready(function(){ $('#get').live('click', function() { var currentIFrame = $('#frameDemo'

我试图访问加载外部URL的iframe的DOM。当然,由于跨域安全性,我会收到一个“权限被拒绝”错误。我怎样才能做到这一点?我看到了json(但我无法从外部源代码中获取json字符串)和HTML5 postmessage

您可以在以下网站现场观看:

代码是:

    $(document).ready(function(){
     $('#get').live('click', function() {

        var currentIFrame = $('#frameDemo');
        currentIFrame.contents().find("a").css("background-color","#BADA55");

        alert ("done")
    });
    });

<iframe src="http://api.jquery.com/" width="80%" height="600" id='frameDemo'></iframe>
<button id="get">Get</button>
$(文档).ready(函数(){
$('#get').live('click',function()){
var currentIFrame=$(“#frameDemo”);
currentIFrame.contents().find(“a”).css(“背景色”,“BADA55”);
警报(“完成”)
});
});
得到
最简单的方法是什么。
谢谢

这是不可能的。除非您尝试访问的外部域支持类似或的过程

有几个例外(像往常一样):

例如,如果您正在处理一个WebApp,您可以告诉您的用户,他们必须授予对
跨域调用的访问权限

例如,在Gecko/Firefox中,您可以调用

netscape.security.PrivilegeManager.enablePrivilege('UniversalBrowserRead')
它使浏览器能够通过
ajax/iframes
访问外部域。在这种情况下,用户必须设置

signed.applets.codebase_principal_support
about:config
下执行
true
,以使此操作正常

在这个世界的
internetexplorers
中,有一个名为
允许跨域访问
的设置深深隐藏在
安全
选项卡中,该选项卡必须设置为
启用

Chrome
允许使用命令行参数进行跨域调用:

chrome.exe --disable-web-security

好的,谢谢你的信息。我正在处理这个问题,应该可以。在这里,你可以找到一些与跨域请求相关的信息:你可以通过与跨域请求相关的