加入收藏 | 设为首页 | 会员中心 | 我要投稿 惠州站长网 (https://www.0752zz.com.cn/)- 办公协同、云通信、物联设备、操作系统、高性能计算!
当前位置: 首页 > 业界 > 正文

移动端H5页面开发坑点指南

发布时间:2019-10-26 14:23:18 所属栏目:业界 来源:_Dreamslv
导读:副标题#e# 前言 在平时的H5移动端开发时,我们难免会遇到各种各样的坑点,这篇文章就带着大家来看看怎么解决,文章较长,建议收藏方便以后查阅! 前方高能! canvas在retina屏模糊 只需要将画笔根据像素比缩放即可 run(canvasEl){ constcanvas=canvasEl; cons

这个是苹果系统限制默认不允许自动播放音频/视频,需要点一下触发play()事件才能播放;那么我们可以在页面onload后触发播放事件:

  1. document.getElementById('music').play(); 

到这里一般都可以播放音乐了,如果还不行很有可能是微信的限制

问题3:微信的限制

如果是微信的限制,这时需要调用微信接口,页面先引入:

  1. <script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script> 

然后JS写入微信事件:

  1. document.addEventListener("WeixinJSBridgeReady", function() { 
  2.     document.getElementById('music').play(); 
  3. }, false); 

小结:

  1. audio元素的autoplay属性在IOS及Android上无法使用,在PC端正常
  2. audio元素没有设置controls时,在IOS及Android会占据空间大小,而在PC端Chrome是不会占据任何空间

问题4:Safari浏览器自动播放

  1. document.addEventListener('touchstart', function(){    
  2.     audio.play(); 
  3. }, false); 

ios系统不支持动画暂停样式(animation-play-state)

H5页面一般都会有BGM,也会提供一个旋转的音乐图标供用户开启关闭音乐;我们希望当用户点击音乐按钮时图标停止旋转,再点图标顺着之前停止的位置继续跑动画;animation-play-state是最简便的方式,然而ios不支持

目前的解决方案是:音乐图标负责跑动画,图标父级元素负责记录停止时的转动值

ios防止长按页面元素被选中

解决:加入样式可禁止用户进行复制,ios和一般的安卓都可以解决

  1. -webkit-touch-callout:none;  //系统默认菜单被禁用;可以实现页面因为长按弹出各种操作窗口 
  2. -webkit-user-select:none; //webkit浏览器   
  3. -khtml-user-select:none; //早期浏览器  
  4. -moz-user-select:none; //火狐  
  5. -ms-user-select:none; //IE10  
  6. user-select:none;  

(编辑:惠州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读