使用iframe和jQuery从其他站点检索元素

时间:2014-01-01 00:52:00

标签: javascript jquery html html5 iframe

我正在尝试创建一个网站,从另一个网站检索数据,然后将其粘贴到我网站上的表格中。我试图通过iframe和jQuery来做到这一点。目前,我不关心粘贴数据。我只是想让jQuery检索包含我需要的数据的div。

这是我的iframe代码:

<iframe id="data1" src="http://example.example" hidden="true"></iframe>

id为frStatus2的div位于html文档的主体内。

这是我的javascript / jQuery代码:

$(document).ready(function(){
var x = $('#data1').contents().find('#frStatus2').html();
console.log(x);
});

在谷歌搜索了一段时间后,我想出了这个。

感谢您的时间。

1 个答案:

答案 0 :(得分:4)

如果来源是其他网站,则无法使用JavaScript访问iFrame的内容,因为这会破坏same-origin policy。您需要在服务器端执行此操作。如果您尝试访问的网站具有JSONP API,则应使用该网站,否则您可以自行实施。

考虑一下如果 允许访问iFrame的内容,会有多么不安全。假设您使用此iFrame方法在后台加载了一堆银行网站,社交网络等,并通过解析HTML进行测试以查看是否有任何登录。然后,您可以做各种令人讨厌的事情,从转移资金到更改密码和抓取个人信息。

访问iFrame内容的唯一时间是域名,协议和端口是否匹配。