如何从iframe中获取当前iframe偏移量?

时间:2012-06-07 21:54:20

标签: javascript jquery internet-explorer-7 offset

我希望安全限制(跨站点脚本)会阻止我这样做,但我认为不会受到伤害。我正在处理可能嵌入来自不同域的另一个页面的页面。我对iframe一无所知,除了我可以预测部分src属性。我可以检测到它是否嵌入了“if”,但我真的需要知道嵌入它的偏移量。

我正在我的页面中进行一些位置计算(在这种情况下嵌入在iframe中)。无论它是否嵌入到所有当前浏览器中,它都很有效,但在IE 7中给我带来了问题。由于某种原因,偏移量jQuery让我在IE 7中偏离了嵌入式iframe偏移的确切数量。如果我能得到偏移量,我可以在这种情况下补偿它。

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以使用JavaScript执行此操作。

父框架

<html>
<body>
    <iframe src="childFrame.html"></iframe>
</body>
</html>

子框架

<html>
<body>
   Child Frame
</body>
<script type="text/javascript">
    alert(document.parentWindow.document.body.innerHTML);
</script>
</html>

关键位在这里是“document.parentWindow.document.body”。现在您拥有了父体,您可以访问HTML并获得所需的任何属性。

另一方面,您可以使用Iframe上的Sandbox属性。看看下面的链接。建议不要将此属性用于生产代码。

http://www.w3schools.com/tags/tag_iframe.asp