首页 新闻 会员 周边 捐助

国内浏览器(如360,搜狗,QQ,百度,淘宝)用的是什么内核?

0
悬赏园豆:5 [已解决问题] 解决于 2012-04-11 14:57

请问国内浏览器(如360,搜狗,QQ,百度,淘宝)用的是什么内核?就拿360来说有的说用的是IE内核,有的又说用的是webkit内核,怎么验证呢?

tab_china的主页 tab_china | 初学一级 | 园豆:54
提问于:2012-04-11 08:06
< >
分享
最佳答案
0

来自:如何用 JavaScript 探测当前浏览器是否为 WebKit 内核

对于JavaScript来说,只能通过User Agent String来获得,没有其它更好的办法。

jQuery.myPlugin = {

//获得浏览器的内核与外壳的类型和版本

Client: function (){

//浏览器内核类型(只有五种)

var engine = { ie:0, webkit:0, gecko:0, opera:0, khtml:0 };

//浏览器外壳类型(国内常见的浏览器有:360浏览器、傲游、腾讯QQ\TT浏览器、世界之窗、彗星浏览器、绿色浏览器、传统IE、谷歌Chrome、网景netscape、火狐、Opera、苹果Safari等等)

var shell = { se360:0, se:0, maxthon:0, qq:0, tt:0, theworld:0, cometbrowser:0, greenbrowser:0, ie:0, chrome:0, netscape:0, firefox:0, opera:0, safari:0, konq:0 };

//获得客户端浏览器的信息

var ua = navigator.userAgent.toLowerCase();

for (var type in engine) {

if (typeof type === 'string') {

var regexp = 'gecko' === type ? /rv:([\w.]+)/ : RegExp(type + '[ \\/]([\\w.]+)');

if (regexp.test(ua)){

engine.version = window.opera ? window.opera.version() : RegExp.$1;//浏览器内核版本

engine[type] = parseFloat(engine.version);

engine.type = type;//浏览器内核类型

break;

}

}

}

for (var type in shell) {

if (typeof type === 'string') {

var regexp = null;

switch(type) {

case "se360": regexp = /360se(?:[ \/]([\w.]+))?/; break;

case "se": regexp = /se ([\w.]+)/; break;

case "qq": regexp = /qqbrowser\/([\w.]+)/; break;

case "tt": regexp = /tencenttraveler ([\w.]+)/; break;

case "safari": regexp = /version\/([\w.]+)/; break;

case "konq": regexp = /konqueror\/([\w.]+)/; break;

case "netscape": regexp = /navigator\/([\w.]+)/; break;

default: regexp = RegExp(type + '(?:[ \\/]([\\w.]+))?');

}

if (regexp.test(ua)) {

shell.version = window.opera ? window.opera.version() : RegExp.$1 ? RegExp.$1 : 'unknown';//浏览器外壳版本

shell[type] = parseFloat(shell.version);

shell.type = type;//浏览器外壳类型

break;

}

}

}

//返回浏览器内核与外壳的类型和版本:engine为内核,shell为外壳

return { engine: engine, shell: shell };

}

};

 

 

收获园豆:5
zsounder | 老鸟四级 |园豆:2819 | 2012-04-11 08:58

怎么用啊

iisp | 园豆:81 (初学一级) | 2014-03-27 14:29
其他回答(2)
0

国内的浏览器都是混合内核的,像360有极速模式是webkit内核,而显示IE兼容网页(网页的响应头指定了要兼容IE某个版本,或者网页中有META标签指定要显示兼容IE的那个版本)时就用IE内核。

通过navigator.userAgent一般情况下可以取得正确的头,但是也不尽然。

在360和QQ大战时,QQ曾经设置QQ空间禁止360浏览器访问,360马上推出了一个补丁将他的userAgent设置为其他。

玉开 | 园豆:8822 (大侠五级) | 2012-04-11 09:08
0

学习了。。。

KivenRo | 园豆:1734 (小虾三级) | 2012-04-11 09:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册