移动端优化
1.窗口类
webAPP优化-云隐
手机是否横屏/翻转
1.监听window的orientationchange/resize属性,改变this.angle值
'orientationchange' in window 这个是判断在window对象中是否有orientationchange属性,因为orientationchange会遇到兼容性问题,有的浏览器不支持,所以这边做了判断来决定是用orientationchange还是resize(思路就是用resizeEvt这个变量来控制用哪个,后面只要用resizeEvt这个变量来监听屏幕是否被调整
2.媒体查询@media,给orientation不同的值
设置当前系统语言
this.Lang = navigator.Language
IE和opera在几年前是navigator.browerLanguage
设置默认语言是英语,应该遍历完才else吧。。。
includes() 方法是区分大小写的,判断当前字符串是否包含被搜寻的字符串。
浏览器兼容前缀
css
-webkit-(谷歌,Safari,新版 Opera 浏览器,以及几乎所有 iOS 系统中的浏览器(包括 iOS 系统中的火狐浏览器);基本上所有基于 WebKit 内核的浏览器)-moz-(火狐浏览器)-o-(旧版 Opera 浏览器)-ms-(IE 浏览器 和 Edge 浏览器)
-webkit-transition: all 4s ease;
-moz-transition: all 4s ease;
-ms-transition: all 4s ease;
-o-transition: all 4s ease;
transition: all 4s ease;
api
全大写的前缀修饰接口名,全小写的前缀修饰属性或者方法
var requestAnimationFrame = window.requestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.oRequestAnimationFrame ||
window.msRequestAnimationFrame;
全屏展示图表/图片/浏览器
监听能否全屏的属性document. fullscreenEnab led,调用不同浏览器的变全屏/退出全屏方法ELement.requestFullscreen()
手机只占一半/禁用全屏提高性能(全屏是当前层上面覆盖了一层)/用户开启这个按钮才能使用全屏
2.硬件类
获取电池
路由器的管理页面有一个连接态,连接小米扫地机,如果没电就不好搞,需要检查电量