我正在构建一个脚本/应用程序(在客户端和代理站点上),它收集有关各种网站元素的信息。
让我烦恼的最后一件事是收集IFRAME的位置。让我更详细地解释一下:
我将包含一个HTML代码示例:
<html>
<body>
<a href="http://www.google.com" target="test_iframe">Click here to open an iframe.</a>
<br>
<iframe id="test_iframe" name="test_iframe"></iframe>
</body>
</html>
因此,如果我尝试使用JavaScript,我将获得一个空字符串。
document.getElementById("test_iframe").src
如果我尝试使用以下内容,我将收到安全错误。
document.getElementById("test_iframe").conentDocument.location.href
所以我的问题可以简化为:
非常感谢您的回答: - )
答案 0 :(得分:1)
这称为iframejailing。如果指向不同的域,则无法读取或更改页面中的iframe元素。它是浏览器中的内置安全功能。
但是,如果问题中的域可以一起创建iframe代理(谷歌获取更多信息),那么有一些解决方法,我认为在这种情况下不适用。
如果您有更多问题,请回复。