【问题标题】:Iframe cause document height to be equal to the window/viewport height on IOS devices (chrome & safari)iframe 导致文档高度等于 IOS 设备(chrome 和 safari)上的窗口/视口高度
【发布时间】:2018-12-09 15:07:29
【问题描述】:

我正在尝试在我的网站中嵌入一个我无法控制的网站。

标题中提到的问题是我在 iframe 中面临无限滚动。如果我尝试打开原始网站,它正在工作。有谁知道为什么会这样?

检查此https://revolution.themepunch.com/le-chef-restaurant-website-wordpress-template/ 站点以查看预期结果。 而如果您尝试将其加载到 iframe 中,它将无法正确呈现。 代码:

<iframe  src="https://revolution.themepunch.com/le-chef-restaurant-website-wordpress-template/"></iframe>

更新: 调试该页面后,我发现有一个奇怪的行为,即文档高度等于窗口/视口高度,这就是这个问题的原因。什么可能导致这样的行为(文档高度 == 窗口高度),我找不到任何使用 API (如 resizeto 或其他东西)修改窗口高度的代码部分。

注意事项:

  1. 加载的网站大小约为 20MB。
  2. 它可以在 Andorid 设备上正确打开。
  3. 对于 Iphone,如果滚动动画分叉,那么我的网站会完全崩溃。

【问题讨论】:

    标签: javascript jquery ios iframe revolution-slider


    【解决方案1】:

    我遇到了完全相同的问题。一旦我弄清楚就会发布答案。到目前为止,我发现所有发布的解决方案都没有奏效(可能是因为我是 CSS 方面的业余爱好者)。

    编辑(x-post/repost):

    好的,所以我找到的答案是,如果您为 iframe 设置 scrolling=no,那么该错误就会消失。不幸的是,我正在处理的项目需要有一个滚动 iframe,所以这对我来说是个问题,但我希望这个解决方案能有所帮助!

    var iFrame = document.getElementById("iFrame");
    iFrame.scrolling = "no";
    

    【讨论】:

    • 是的,我知道滚动解决方法。但这不是可取的。这是革命库中的一个错误。他们应该考虑 iframe 场景。我硬编码了一些高度计算来证明这一点。
    猜你喜欢
    • 2017-05-11
    • 2014-08-26
    • 2021-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-02
    • 1970-01-01
    • 2010-12-07
    相关资源
    最近更新 更多