js检测浏览器的基本信息 如:版本 内核 。。。。

js检测浏览器的基本信息 如:版本 内核 。。。。,第1张

(function (win, doc, nav)

{

/

  @des 浏览器判断脚本,兼容cmd规范

 /

var ua = navuserAgenttoLowerCase (), key =

{

    ie : "msie",

    sf : "safari",

    tt : "tencenttraveler"

},

// 正则列表

reg =

{

    browser : "(" + keyie + "|" + keysf + "|firefox|chrome|opera)",

    shell : "(maxthon|360se|360chrome|theworld|se|theworld|greenbrowser|qqbrowser|lbbrowser|bidubrowser)",

    tt : "(tencenttraveler)",

    os : "(windows nt|macintosh|solaris|linux)",

    kernel : "(webkit|gecko|like gecko)"

}, System =

{

    "50" : "Win2000",

    "51" : "WinXP",

    "52" : "Win2003",

    "60" : "WinVista",

    "61" : "Win7",

    "62" : "Win8",

    "63" : "Win81"

}, chrome = null, is360Chrome = null, // 360浏览器

is360se = null, // 360级速浏览器

// 特殊浏览器检测

is360 = (function ()

{

// 高速模式

var result = uaindexOf ("360chrome") > -1  !!1 : !1, s;

// 普通模式

try

{

if (winexternal && winexternaltwGetRunPath)

{

s = winexternaltwGetRunPath;

if (s && sindexOf ("360se") > -1)

{

result = !!1;

}

}

}

catch (e)

{

result = !1;

}

return result;

}) (),

// 判断百度浏览器

isBaidu = (function ()

{

return uaindexOf ('bidubrowser') > -1  !!1 : !1;

}) (),

// 判断百度影音浏览器

isBaiduPlayer = (function ()

{

return uaindexOf ('biduplayer') > -1  !!1 : !1;

}) (),

// 判断爱帆avant浏览器

isAvant = (function ()

{

return uaindexOf ('爱帆') > -1  !!1 : !1;

}) (), isLiebao = (function ()

{

return uaindexOf ('lbbrowser') > -1  !!1 : !1;

}) (),

// 特殊检测maxthon返回版本号

maxthonVer = function ()

{

try

{

if (/(\d+\\d)/test (winexternalmax_version))

{

return parseFloat (RegExp['\x241']);

}

}

catch (e)

{

}

} (), browser = getBrowser (), shell = uaMatch (regshell), os = uaMatch (regos), kernel = uaMatch (regkernel);

// ie11

function getBrowser ()

{

// 检测是否是ie内核 是否是ie10 标识

if ((!!winActiveXObject || "ActiveXObject" in win)

        && (uamatch (/net clr/gi) && uamatch (/rv:(\w+\\w+)/gi)))

{

return [

        "msie", uamatch (/rv:(\w+\\w+)/gi)[0]split (":")[1]

];

}

return uaMatch (regbrowser);

}

/

  对ua字符串进行匹配处理

  

  @param {string}

             str 要处理的字符串

  @return {array} 返回处理后的数组

 /

function uaMatch (str)

{

var reg = new RegExp (str + "\\b[ \\/]([\\w\\])", "i"), result = uamatch (reg);

return result  resultslice (1) : [

        "", ""

];

}

function detect360chrome ()

{

return 'track' in documentcreateElement ('track') && 'scoped' in documentcreateElement ('style');

}

function isHao123 ()

{

return !!(windowexternal && windowexternalExtGetAppPath && windowexternalExtGetAppPath ());

}

function isIpad ()

{

return uaindexOf ("ipad") > -1 || uaindexOf ("iphone") > -1;

}

function canvasSupport ()

{

return !!documentcreateElement ('canvas')getContext;

}

// 保存浏览器信息

if (browser[0] === keyie)

{

if (is360)

{

shell = [

        "360se", ""

];

}

else if (maxthonVer)

{

shell = [

        "maxthon", maxthonVer

];

}

else if (shell == ",")

{

shell = uaMatch (regtt);

}

}

else if (browser[0] === keysf)

{

browser[1] = uaMatch ("version") + "" + browser[1];

}

chrome = (browser[0] == "chrome") && browser[1];

// 如果是chrome浏览器,进一步判断是否是360浏览器

if (chrome)

{

if (detect360chrome ())

{

if ('v8Locale' in window)

{

is360Chrome = true;

}

else

{

is360se = true;

}

}

}

/

  获取 *** 作系统

 /

function getSystem ()

{

var plat = navigatorplatform, isWin = (plat == "Win32") || (plat == "Windows") || (plat == "Win64"), isMac = (plat == "Mac68K")

        || (plat == "MacPPC") || (plat == "Macintosh") || (plat == "MacIntel");

if (isMac)

{

return "Mac";

}

var isUnix = (plat == "X11") && !isWin && !isMac;

if (isUnix)

{

return "Unix";

}

var isLinux = (String (plat)indexOf ("Linux") > -1);

if (isLinux)

{

return "Linux";

}

if (isWin)

{

return System[os[1]] || "other";

}

return "other";

}

// 遵循cmd规范,输出浏览器、系统等响应参数

windowexports =

{

    cookieEnabled : navigatorcookieEnabled,

    isStrict : (doccompatMode == "CSS1Compat"),

    isShell : !!shell[0],

    shell : shell,

    kernel : kernel,

    platform : os,

    types : browser,

    chrome : chrome,

    system : getSystem (),

    firefox : (browser[0] == "firefox") && browser[1],

    ie : (browser[0] == "msie") && browser[1],

    opera : (browser[0] == "opera") && browser[1],

    safari : (browser[0] == "safari") && browser[1],

    maxthon : (shell[0] == "maxthon") && shell[1],

    isTT : (shell[0] == "tencenttraveler") && shell[1],

    is360 : is360,

    is360Chrome : is360Chrome, // 是否是chrome内核的360浏览器

    is360se : is360se, // 是否是chrome内核的360极速浏览器

    isBaidu : isBaidu,

    isHao123 : isHao123, // 判断hao123浏览器

    isLiebao : isLiebao,

    isSougou : (shell[0] == "se"),

    isQQ : shell[0] == "qqbrowser",

    isIpad : isIpad,

    version : '',

    noDl : isBaidu || isAvant || isBaiduPlayer, // 浏览器下载入口需排除的浏览器

    canvasSupport : canvasSupport () // 是否支持canvas

};

}) (window, document, navigator);

一般的浏览器因为cookie的隐私性,所以限制了普通用户查看cookie的具体内容

ie11查看cookie:点击浏览器上面的工具-internet选项-隐私-高级-“覆盖自动cookies处理”前面勾上。第一方和第三方的cookie都选接受。

火狐查看cookie还是很方便地,可以用火狐查看一下

js设置cookie,可以读取当前用户的在自己网站上的cookie文件,主要用到的是documentcookie方法。

以上就是关于js检测浏览器的基本信息 如:版本 内核 。。。。全部的内容,包括:js检测浏览器的基本信息 如:版本 内核 。。。。、关于js设置cookie问题 ie cookie ie11查看cookie ie的cookie在哪、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9399789.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存