Javascript Can';无法获取任何原点以加载int iframe

Javascript Can';无法获取任何原点以加载int iframe,javascript,Javascript,我正在尝试使用AnyOrigin将url加载到我的iframe中: 问题:它加载了一个空帧,我做错了什么 代码: <!DOCTYPE HTML> <html> <head> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> <meta charset="utf-8"> <script type="text

我正在尝试使用AnyOrigin将url加载到我的iframe中:

问题:它加载了一个空帧,我做错了什么

代码

<!DOCTYPE HTML>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<meta charset="utf-8">
<script type="text/javascript">
$.getJSON('http://anyorigin.com/get?url=google.com&callback=?', function(data){
    $('#output').html(data.contents);
});
    </script>
</head>
<body>
<iframe id="output"></iframe>
</body>
</html>

$.getJSON('http://anyorigin.com/get?url=google.com&callback=?,函数(数据){
$('#output').html(data.contents);
});

Anyorigin使用JSONP,因此您不需要使用AJAX调用来加载它。相反,
回调
查询参数应该是一个函数名,您应该像加载正则脚本标记一样加载它:

<script src="http://anyorigin.com/get?url=google.com&callback=myCallbackFunction"></script>

加载脚本时,它将自动执行一个函数,该函数的名称为您在回调查询参数中指定的名称。当然,要使其工作,您需要这样定义一个函数:

<script>

    function myCallbackFunction(myData) {
         //myData.contents has your html, do something here
    }

</script>

函数myCallbackFunction(myData){
//myData.contents有您的html,请在此处执行操作
}
请注意,函数必须在脚本之前定义,因此要么需要动态嵌入脚本,要么需要在脚本之前定义函数

这里有一些棘手的部分,例如如何填充iframe,以及如何声明函数回调,因此我在这里提供了一个完整的示例:

<html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script>
function myCallbackFunction(myData) {
    $(function() {
        $("#test").contents().find('html').html(myData.contents);
    });
}
</script>
<script src="http://anyorigin.com/get?url=http://google.com/&callback=myCallbackFunction"></script>
</head>
<body>
</body>
<iframe id='test' style='width: 100%; height: 100%'>

</html>

函数myCallbackFunction(myData){
$(函数(){
$(“#test”).contents().find('html').html(myData.contents);
});
}
注意,我已将更新iframe内容的调用包装在jquery文档onload事件中。如果没有这样做,那么调用将尝试在iframe存在之前填充它,并将以静默方式失败