javascript - 修复 iOS/iPad 2 中的溢出内容滚动

标签 javascript jquery html css iframe

我遇到一个问题,我无法让 safari 移动浏览器在 iframe 上滚动 VS 扩展文档以显示完整内容。

对于上下文,我有一个这样概述的文档 —

enter image description here

当我尝试在设置为 overflow-x: scroll 和 '-webkit-overflow-scrolling: touch;` 的 nav.html 上水平滚动时。在 iPad 2 上的 iOS 7 中测试时,这些都不起作用。我也尝试在 iOS 模拟器中进行测试,但仍然没有成功。

我在此处的产品页面上遇到问题 — http://idex-hs.viser.biz.dev.thevfiles.com/product-kiosk/v2-kiosk/index.html .

上面的链接是一个包含主网站主体的 iFrame。在主网站中,我们有一个包含 2 个 iFrame 容器的 index.html 页面。 1 个用于产品 (iframe[name='viewer']),另一个用于导航 (iframe[name='nav'])。我有 overflow: auto 设置为查看器 iframe,它似乎正在处理 overflow-y 内容。对于导航,内容会超出设置宽度的容器并溢出整个文档,而不仅仅是导航 iFrame 中 div.nav 上的导航。

这是我的 index.html 标记,带有两个 iframe(product/[product_number].html 和 nav.html)—

<body class="cat">
  <div class="back-nav-cat"></div>
  <!-- Navigation Links -->
  <div class="cat-navigation back" onclick="location.href='../index.html';">BACK</div>
  <!-- Viewer -->
  <iframe src="products/P-715.html" frameborder="0" name="viewer" width="2560" height="1195" scrolling="no"></iframe>

  <!-- Nav -->
    <iframe src="nav.html" frameborder="0" name="nav" width="2560" height="245" scrolling="yes" style="position: absolute;"></iframe>
</body>

如果有人知道 1) 导致此问题的原因,以及 2) 什么是经过验证的解决此问题的方法,我将不胜感激。

仅供引用:该域是我们机构的测试域,但请谨慎对待(有人告诉我它看起来像病毒......不是我们的意图)。

提前致谢。

编辑:

感谢Ryan Wheale ,我需要做的就是将 nav iFrame 的宽度设置为 width: 100%。我还将 iFrame 包装在一个包含 overflow-x: scroll;-webkit-overflow-scrolling: touch; 的包装 div 中。

最佳答案

overflow对帧没有影响。将框架宽度设置为始终适合屏幕的值(例如 100%)。然后,一旦框架内的内容开始占用超过其可用宽度或高度,滚动将自动触发(假设您在 iframe 上设置了 scrolling="yes" 属性。

对于 iOS,您还需要一个带有一些特殊 CSS 的包装 DIV:

.iframe-wrapper {
    -webkit-overflow-scrolling: touch;
    overflow-x: scroll;
}

<div class="iframe-wrapper">
    <iframe scrolling="yes" width="100%" height="200px"></iframe>
</div>

我仍然认为,框架的这种特殊用例在 10 多年前就已经过时且过时了,不应再使用了。你可以相信我的话。像下面这样简单的东西应该可以工作。假设您正在使用 jQuery 并且您的 html 页面是静态的,您将需要创建一个 DIV 来代替您的每个 iframe - 为每个 DIV 提供一个 ID 而不是名称:

$('#main').load('products/P-715.html');
$('#nav').load('nav.html');

关于javascript - 修复 iOS/iPad 2 中的溢出内容滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26983125/

相关文章:

javascript - jquery 显示/隐藏比例不能按预期工作

javascript - 选定的文本索引

html - 以编程方式在网站上输入字符串

javascript - UWP:获取剪贴板文本

javascript - 如何防止退格键出现多余的 "r"字母

jquery - JQuery 对话框内包含表单的部分 View 中的输入无响应

javascript - slider 淡入/淡出

html - 在 Bootstrap 3 中使用 col-push 和 col-pull 操作列顺序

javascript - 如何从Javascript对象中删除所有childNode?

JavaScript 默认值 null