现在很多手机浏览器都是用 chrome 内核包装出来的 现在想用 js 精确判断出原生的 chrome 而不是封装的 要怎么写这个 js 如果用这个 userAgent.indexOf("Chrome") > -1 结果那些什么搜狗 360 uc 全都显示是 chrome 了。。因为那些都是用 chrome 内核改造出来的
![]() | 1 jasperjia 2018-10-05 13:32:35 +08:00 via Android 马克,有时间也准备研究一下 |
![]() | 2 yanaraika 2018-10-05 13:34:30 +08:00 |
3 h175h32 OP @yanaraika 这个也不行 谷歌内核封装的一样显示是 chrome 那些 360,uc,qq 浏览器这些用谷歌内核的都显示 chrome |
4 whoisnian 2018-10-05 14:50:17 +08:00 能否通过 chrome 版本进行大致的判断,把较老的版本认为是非原生的 |
![]() | 6 jecshcier 2018-10-05 15:58:02 +08:00 via iPhone ![]() 我认为这是徒劳。因为使用 chrome 浏览器内核的本身就是某一个版本的 chrome 啊,没任何毛病。 如果反过来想,360,qq,uc 等可能基于 chromium 之外还带了自家的特性,以这些浏览器的特性此来区分才比较合理,而不是去找一个“真 chrome 浏览器”的特性,因为以上的都是“真 chrome 浏览器”。。。 |
7 azh7138m 2018-10-05 16:08:41 +08:00 via Android 有的 IE 里面 ua 也会有 chrome 的字样 没有好的办法,得对不同浏览器的 ua 不断的作判断 比如 qq 的特征是啥,uc 的特征是啥,要不断的收集 |
![]() | 8 snw 2018-10-05 16:19:39 +08:00 via Android 找一个证书配置错误但列入可信站点白名单的网站,然后尝试加载? |
![]() | 9 zzNucker 2018-10-05 16:22:05 +08:00 套壳的浏览器一般会给 js 注入一些特殊的 native 接口和参数。 可以从这个角度入手 |
![]() | 11 isCyan 2018-10-08 18:23:51 +08:00 |
12 duanyukun69 2019-04-26 11:26:20 +08:00 @isCyan 这个可以哎 |