公司前段时间做项目需要判断浏览器,因为项目进度急暂时只支持一种浏览器
使用window.navigator.userAgent属性,但是在国产浏览器上遇到了问题,下面这段代码只能判断内核,但是我想判断是什么浏览器而不是根据内核
se 2.X是搜狗浏览器标示,但是无法获取搜狗浏览器版本,最后问了搜狗浏览器技术支持他给了我一个属性window.navigator.userAgent使用的方法点击f12,选择控制台,输入window.SE_VERSION,回车即可,但是js无法使用
接下来是360浏览器,360浏览器连标示也隐藏了,可以从图片看出来
QQ浏览器;QQ浏览器的标示跟版本号都是可以获取的
此函数可区分ie5.5~ie8、Chrome、Opera、Safair、Firefox这5种常见浏览器。
var ua = window.navigator.userAgent; ret = ""; if (/Firefox/g.test(ua)) { ua = ua.split(" "); ret = "Firefox|" + ua[ua.length - 1].split("/")[1] } else if (/MSIE/g.test(ua)) { ua = ua.split(";"); ret = "IE|" + ua[1].split(" ")[2] } else if (/Opera/g.test(ua)) { ua = ua.split(" "); ret = "Opera|" + ua[ua.length - 1].split("/")[1] } else if (/Chrome/g.test(ua)) { ret = "Chrome|" + ua[ua.length - 2].split("/")[1] if (ret.split("|")[1] == "undefined") { ret = "Chrome|" + ua.substr(ua.lastIndexOf("Chrome/") + 7, 2); } } else if (/^apple\s+/i.test(navigator.vendor)) { ua = ua.split(" "); ret = "Safair|" + ua[ua.length - 2].split("/")[1] } else { ua = ua.split(" "); ret = "未知浏览器" } document.writeln(ret);