iframe在iphone手机上的问题
2020-01-20 16:00:32来源:博客园 阅读 ()
iframe在iphone手机上的问题
问题1:
通过document.addEventListener("scroll",function(){})对页面滚动监听事件进行监听,但ios下$(document).scrollTop()值始终为0,对页面监听无效。
原因:
因为iOS下iframe的高度会根据页面的内容自适应,造成了iframe的高度过高(即iframe的高度>屏幕的高度)。则iframe内部html、body标签即使设置为100%,它的值也是页面所有内容撑开的高度。
解决方法:
将body设置为fixed,宽高设为100%,添加-webkit-overflow-scrolling: touch;在body下写一个div,针对这个div进行scroll监听操作。
html{ position: relative; width: 100%; height: 100%; overflow: hidden; } body{ position: fixed; top: 0; left: 0; width: 100%; height: 100%; overflow: auto; -webkit-overflow-scrolling: touch; }
问题2:ios中点击,通过display=block或.show()显示元素会跳转顶部。
解决方法:将元素设置为visibility:hidden,通过改变值为"visible"显示元素。
问题3:ios微信中,iframe下长按二维码识别不了。
原因:iframe受微信的安全限制,阻止了默认事件,也可能是父子窗口的原因。
解决思路:看其他文章说可以在iframe中的二维码被按下touchstart的时候,将二维码地址推送至父页面。父页面接收到二维码识别的请求,则创建一个不可见的img元素,src为刚刚传输过来的二维码地址,并且二维码置顶铺满整个屏幕。在touchend与touchcancel时,通知父窗体删除二维码。(具体没有尝试过)
原文链接:https://www.cnblogs.com/Dobby-/p/12216904.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:Html5学习系列
- html框架iframe与frameset的介绍 2020-03-30
- Iframe 高度自适应,js控制Iframe 高度自适应 2019-12-31
- iframe子元素无法全屏 2019-11-21
- 深入理解iframe 2019-08-26
- iframe滚动条充当浏览器滚动条 2019-08-26
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash