摘要:在做移动端时,想起用来对浏览器类型进行判断,查了点资料,在这里总结下还有一个就是移动端的缩放问题,在标签中进行设置,对部分浏览器进行强制性的限制的一些常用属性为对象的一个属性,指向了一个包含浏览器相关信息的对象浏览器的版本号浏览器使用的语言
在做移动端时,想起用navigator.userAgent来对浏览器类型进行判断,查了点资料,在这里总结下1.navigator的一些常用属性
还有一个就是移动端的缩放问题,在meta标签中进行设置,对部分浏览器进行强制性的限制
navigator为window对象的一个属性,指向了一个包含浏览器相关信息的对象
navigator.appVersion 浏览器的版本号 navigator.language 浏览器使用的语言 navigator.userAgent 浏览器的userAgent信息
其中userAgent 属性是一个只读的字符串,声明了浏览器用于 HTTP 请求的用户代理头的值。2.较常见的ios端、Android端及PC端的判断
简单点的
/* 判断浏览器类型 */ let userAgent = navigator.userAgent; /* 判断手机型号 */ let app = navigator.appVersion; /* Android 终端 */ let isAndroid = userAgent.indexOf("Android"); /* ios终端 */ let isMac = !!userAgent.match(/(i[^;]+;( U;)? CPU.+Mac OS X/);
封装性的
/* 判断各类型方法 */ const browser = { version: function() { const userAgent = navigator.userAgent; return { /* 判断是否是ios */ ios: !!userAgent.match(/(i[^;]+;( U;)? CPU.+Mac OS X/), /* 判断是否是Android */ android: userAgent.indexOf("Android") > -1 || userAgent.indexOf("Adr") > -1, /* 判断是否是移动端 */ mobilePhone: !!userAgent.match(/AppleWebKit.*Mobile.*/), /* IE内核 */ trident: userAgent.indexOf("Trident") > -1, /* opera内核 */ presto: userAgent.indexOf("Presto") > -1, /* 苹果、谷歌内核 */ webkit: userAgent.indexOf("AppleWebKit") > -1, /* 火狐内核 */ gecko: userAgent.indexOf("Gecko") > -1 && userAgent.indexOf("KHTML") == -1, /* 判断是否是IPone手机或者QQHD浏览器 */ iphone: userAgent.indexOf("iPhone") > -1, /* 判断是否是iPad */ iPad: userAgent.indexOf("iPad") > -1, /* 判断是否是web应用程序(能够让用户完成某些特定任务的网站),没有头部和底部 */ webApp: userAgent.indexOf("Safari"), /* 是否是微信 */ weixin: userAgent.indexOf("MicroMessenger"), /* QQ */ QQ: userAgent.match(/sQQ/i) == " qq", } }(), /* 判断浏览器使用的语言:navigator.language除IE浏览器外的浏览器使用的语言, * navigator.browserLanguageIE浏览器使用的语言 */ browserLanguage: (navigator.language || navigator.browserLanguage).toLowerCase() }; if(browser.version.ios || browser.version.android || browser.version.mobilePhone) { console.log("是移动端"); }3.meta标签设置
如对浏览器进行强制全屏的设置(UC全屏),webapp模式等
正在努力学习中,若对你的学习有帮助,留下你的印记呗(点个赞咯^_^)
往期好文推荐:
webpack打包(有面试题)
纯css实现瀑布流(multi-column多列及flex布局)
画三角形
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/98036.html
摘要:解决方案可以解决在手机上点击事件的延迟的模块,事件也是为了解决在的延迟问题显示屏原理及设计方案说明屏是一种具备超高像素密度的液晶屏,同样大小的屏幕上显示的像素点由个变为多个,如在同样带下的屏幕上,苹果设备的显示屏中,像素点个变为个。 原文链接 - https://github.com/FrontEndRo... H5项目常见问题及注意事项 Meta基础知识: H5页面窗口自动调整到设备...
摘要:解决方案可以解决在手机上点击事件的延迟的模块,事件也是为了解决在的延迟问题显示屏原理及设计方案说明屏是一种具备超高像素密度的液晶屏,同样大小的屏幕上显示的像素点由个变为多个,如在同样带下的屏幕上,苹果设备的显示屏中,像素点个变为个。 Meta基础知识: H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 //一、HTML页面结构 // width 设置viewport宽度,为一...
摘要:解决方案可以解决在手机上点击事件的延迟的模块,事件也是为了解决在的延迟问题显示屏原理及设计方案说明屏是一种具备超高像素密度的液晶屏,同样大小的屏幕上显示的像素点由个变为多个,如在同样带下的屏幕上,苹果设备的显示屏中,像素点个变为个。 Meta基础知识: H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 //一、HTML页面结构 // width 设置viewport宽度,为一...
阅读 2026·2023-04-26 01:33
阅读 1658·2023-04-26 00:52
阅读 1034·2021-11-18 13:14
阅读 5392·2021-09-26 10:18
阅读 2900·2021-09-22 15:52
阅读 1487·2019-08-29 17:15
阅读 3016·2019-08-29 16:11
阅读 1037·2019-08-29 16:11