【问题标题】:Can someone explain iFrames?有人可以解释 iFrame 吗?
【发布时间】:2012-05-29 10:19:45
【问题描述】:

我对iFrame的理解是里面的内容就是src中包含的内容。我见过很多像 Facebook 等使用 iFrame 的小部件。

当我尝试使用 iFrame 时,我有一个 HTML 文件,其中只有一个 div 和一些内容,没有头部、正文等。只有 HTML 中的内容。但是 iFrame 总是加载整个页面并最终在 iFrame 中给我一个递归 iFrame。

我不明白这是怎么回事,因为我在 iFrame 中引用的 HTML 文件只是内容,没有其他内容。我不包括页眉、页脚,但无论如何都会显示所有内容。

我看到人们在谈论将 iFrame 滚动到某个部分,甚至在 src 中使用 div 的 id 并设置 scrolling=no。这可行,但我的 iFrame 内容将根据用户输入重新加载,并且一旦重新加载,它就会返回到 iFrame 内页面的左上部分。

这没有任何意义。也许这应该是一个小部件或什么的?

编辑 SD 以显示一些格式化的代码: @超现实的梦想

这很奇怪。我正在使用 web2py,所以它可能是后端固有的东西导致了这种情况。 html 文件实际上是一个 div 包装器,其中包含一些元素。但我认为 web2py 会在其中添加标题,即使我没有扩展任何类型的布局。我最终确实通过引用保存在另一个 url 的同一个 html 文件来使其正常工作。它在那里正确显示,而 web2py 不会干扰 html 结构。

之前发生了什么,我有这样的代码:

{{extend 'layout.html'}}
<div class="wrapper">
<page content>
<aside id="iFrame wrapper">
<iframe src="/rates.html"></iframe>
</aside>
</div>

这就是 web2py 页面的基本结构,在布局内部你有所有的页眉、页脚等。发生的事情是它会生成整个页面,而你到达 iFrame 的地方,它会生成页面再次在该 iFrame 内,然后再次向下到 iFrame,继续在每个 iFrame 的页面内无限渲染页面。

【问题讨论】:

  • 把你的外层html和内层html的代码贴出来。
  • 您在 iframe 中加载的内容应该是一个完整的页面,因此请务必包含 html、head 和 body 标签。它不会添加任何额外的东西,所以我很想看看你的代码以确定为什么你有额外的 iframe。

标签: html iframe


【解决方案1】:

iframe 将始终加载整个网页,在 iframe 的 src 属性中引用。即使你的文件只包含一个 div,我相信浏览器会认为它是一个完整的页面并自动添加一个头部和正文。

“我看到人们在谈论将 iFrame 滚动到某个部分” => 对,一旦 iframe 中的页面加载完毕,您就可以使用 JavaScript 访问和操作其 DOM:

var myIframe = parent.document.getElementById("myIframe");
var window = myIframe.contentWindow;

【讨论】:

    猜你喜欢
    • 2010-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多