新人小白在项目中遇到的问题的学习记录整理,有很多考虑不到的地方,不足之处欢迎指正
UA判断用户设备是安卓还是IOS
项目里移动端发现安卓手机出现点击textarea框时键盘弹出遮挡住文本框的情况,但是IOS端文本框是会正常上移的,所以需要判断是安卓还是IOS
直接上代码
判断是否是安卓Android
const UA = navigator.userAgent.toLowerCase() //获取到的数据里大小写字母都有,为了后面好判断,都转成小写的
if (-1 !== UA && -1 !== UA.indexOf('android')) {
//这里写如果是安卓端需要执行的代码
//我的问题解决办法是addEventListenerj监听一下resize事件,然后判断activeElement的tagName是否是TEXTAREA,如果是的话就执行scrollViewIfNeeded方法
}
但是我的项目是放在钉钉上公司内部用的,钉钉内置的应该是UC浏览器,发现直接判断字符串android没有效果,但是谷歌和OPPO自带的浏览器都可以,查看UA获取的数据后把indexOf后的字符串改为了’alibaba.android’,搞定!
判断是否是IOS
const UA = navigator.userAgent.toLowerCase()
const isIOS = !!UA.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)
调试移动端用到的工具
- Charles