JavaScript判断区分谷歌浏览器和360浏览器 |
您所在的位置:网站首页 › ie浏览器是不是百度浏览器呀 › JavaScript判断区分谷歌浏览器和360浏览器 |
360浏览器分为极速模式和兼容模式,内核是IE+ Chrome双内核的,在极速模式下是跟谷歌浏览器内核一致的,兼容模式下的内核是IE内核,所以目前在极速模式下360浏览器的userAgent信息和谷歌浏览器的信息基本一致了 第一种方法:利用window.navigator.userAgent获取当前浏览器的user-agent信息,但是有一个问题就是,360浏览器在不同域名下返回的user-agent信息是不一样的,只有360自家的网站下返回的user-agent信息才是有带着“360SE”或者“360EE”标识的,例如百度等其他网站,返回的user-agent信息中是不带有“360SE”或者“360EE”标识的,故无法很好的进行判断是否为360浏览器。 第二种方法(浏览器版本不同的情况下,有可能无法判断):360(极速模式): 谷歌: 所以采取的判断方法是根据navigator.userAgent.toLocaleLowerCase()方法判断内核分辨,代码如下: function isNumberBrowser() { if (window.navigator.userAgent.indexOf('Safari') != -1) { if (window.navigator.userAgent.toLowerCase().includes('wow64')) { console.log('360浏览器'); } else { console.log('谷歌浏览器'); } } else { // 可以进行其他浏览器(除谷歌和360浏览器外)的判断 } } 第三种方法:判断是否存在np-mswmp.dll文件,截止到2023年11月份,谷歌浏览器下未查询到该文件,但是在360浏览器下存在该文件,代码如下: if (window.navigator.userAgent.indexOf('Safari') != -1) { for (var key in navigator.plugins) { // console.log(key, navigator.plugins[key]) if (navigator.plugins[key].filename == 'np-mswmp.dll') { console.log('360浏览器') } else { console.log('谷歌浏览器') } } } else { // 可以进行其他浏览器(除谷歌和360浏览器外)的判断 } 第四种方法:判断mimeTypes,在360极速浏览器中的这个属性中会有一个mimeTypes的type属性值为application/vnd.chromium.remoting-viewer,如果是360极速浏览器则返回true,如果是谷歌就返回false,代码如下: function isNumberBrowser(option, value) { let mimeTypes = navigator.mimeTypes; for (var mt in mimeTypes) { if (mimeTypes[mt][option] == value) { return true; } } return false; } isNumberBrowser("type", "application/vnd.chromium.remoting-viewer") 根据不同的浏览器版本,能够实现区分出260浏览器和谷歌浏览器的方法是不一样的,以上仅仅是本人经过一翻查阅和一些实践经历的总结,仅供大家参考,欢迎指正! |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |