大家都知道,正常情况下iframe嵌套的页面如果高度超过iframe高度,那么就正常出现滚动条,并且此滚动条是iframe自身的滚动条。

但在ios,safari浏览器下这一切都失效了,或许你百度,研究了一晚上也百思不得其解,因为大部分情况下你无法进行真机调试,那么你看到我的文章,将带你解决这一困扰。言归正传:

<iframe src='xxx'></iframe>

在safari的Webkit引擎下,iframe的高度会随着嵌套页面内容的增大而增大,故失去了滚动条,此时我们会想到js改变iframe的高度,那么在webkit下还是行不通的,因为webkit下滚动条失去了自行滚动的功能,当然scrolling='yes’开放父元素的滚动权,故在iframe包一层div:
<div style='overflow:auto;-webkit-overflow-scrolling:touch;'>
      <iframe scrolling='yes'></iframe>
</div>

此时div的滚动条仍然失效,因为iframe被增大的同时,div也被增大,所以当页面加载完动态设置div高度让滚动条出现,所以完整代码如下:
<div style='overflow:auto;-webkit-overflow-scrolling:touch;'>
      <iframe scrolling='yes'></iframe>
</div>

window.onload = function(){
      document.getElementTagName('div').scrollHeight = '500px'
}

好了,完美解决~

iframe滚动条在safari中无法滚动的终极解决方案相关推荐

  1. html popstate 不触发,javascript – 为什么在加载iframe时在Safari中没有触发popstate?...

    在Safari中,如果存在iframe加载,并且用户通过返回或转发更改历史记录状态,则不会触发popstate事件,从而导致应用程序状态和窗口位置不同步. 我认为一个活跃的XHR请求会导致相同的行为, ...

  2. idea中鼠标滚动失效的解决方案:

  3. 解决iframe在ios中无法滚动的bug

    https://fly.layui.com/jie/32020/(无效) 修改方法: 1.在嵌入进iframe的每个页面的<body>里面加个id,如<body id="i ...

  4. iframe在ipad safari的显示

    今 天要在web中嵌套一个网址或本地HTML,用到了iframe,在电脑上设置scrolling='auto',宽度高度,会有滚动条出现.而在 ipad上会全部显示整个网页的宽度高度.scrollin ...

  5. 【转】使IFRAME在iOS设备上支持滚动

    原文链接:Scroll IFRAMEs on iOS 原文日期: 2014年07月02日  翻译日期: 2014年07月10日 翻译人员:铁锚 很长时间以来, iOS设备上Safari中超出边界的元素 ...

  6. 使IFRAME在iOS设备上支持滚动

    原文链接: Scroll IFRAMEs on iOS 原文日期: 2014年07月02日  翻译日期: 2014年07月10日 翻译人员: 铁锚 很长时间以来, iOS设备上Safari中超出边界的 ...

  7. html frame滚动条,如何修改 iframe 滚动条样式

    项目中用到了 iframe,由于显示效果,想要修改一下滚动条样式,通过修改 css 样式在 chrome 下无效,而在 safari 中显示正常,不知道什么原因,求大佬们指点 写了个测试代码: ind ...

  8. html页面下拉条位置,iframe滚动条位置控制

    javascript中如可控制iframe的滚动条位置 我做了一个聊天室,嵌套了两个iframe,一个name叫mainframe,用来显示聊滚动条始终在最下端: window.οnlοad=func ...

  9. ios上iFrame滚动条失效

    在做公户号的时候,有一个页面引入了IFrame.然后出现了一个很尴尬的问题,iframe不出现滚动条,而且在屏幕高度以外的内容都被截掉了. 百度之后,找到了解决方案,亲测可行~ 要点只要两个:1.将i ...

最新文章

  1. linux 查看用户信息
  2. 怎么在网页中调用netmeeting使用阿?
  3. Python之路----------内置函数
  4. python模糊匹配忽略大小写_在python中忽略大小写的简单方法?
  5. App后台开发运维和架构实践学习总结(13)——OAuth 2.0 概述流程理解
  6. Leetcode每日一题:13.roman-to-integer(罗马数字转整数)
  7. 运行控制器方法之前先执行注解@ModelAttribute的方法
  8. JZOJ5371 组合数问题
  9. 智汇华云 | 集群自动化部署服务流程之自动化集群配置(上)
  10. hurst指数matlab代码_Matlab 简介
  11. JavaScript动态生成表格
  12. Python书写格式
  13. web前端开发学习经验分享——css,js进阶篇
  14. Excel快捷键大全 Excel2013/2010/2007/2003常用快捷键大全【转】
  15. 【Redis】Redis常用命令
  16. Ubuntu 18.04 字体显示异常
  17. Python HackerRank 刷题 Maximum Subarray Sum
  18. 苹果开始向全球扩展iAd平台
  19. 软件开发、硬件开发、IPD产品开发 及 工程开发各阶段划分
  20. js performance.timing:利用performance.timing进行性能分析

热门文章

  1. 崩坏3服务器维护什么时候维护好,崩坏33月5日更新维护时间 崩坏33.8版本更新维护内容...
  2. linux 带环境变量 远程执行,SSH远程执行命令环境变量问题
  3. 直接删除应用程序,导致控制面板卸载程序残留,怎么办?
  4. 71 Linux 应用程序 permission denied问题
  5. Django(缓存系统)
  6. 从0到100岁,精简的人生
  7. 向最优秀的人学习:大自然如何激发人工智能研究
  8. 追华为仿三星 苹果折叠屏iPhone概念图流出 香不香?
  9. webpack4打包优化
  10. html大小和浏览器可视区域一样吗,浏览器窗口可视区域大小