国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > regex > 正文

JS 正則表達(dá)式判斷各個(gè)瀏覽器代碼詳解

2020-01-20 22:18:41
字體:
供稿:網(wǎng)友
注釋都在代碼里面了。很詳細(xì)。
只判斷了IE 火狐 谷歌 因?yàn)槲覜]裝其他瀏覽器了,所以呵呵。當(dāng)然如果要判斷其他瀏覽器。基本代碼都是一樣的了。
復(fù)制代碼 代碼如下:

(function(){
window.sys={};
var ua=navigator.userAgent.toLowerCase();
//首先我們來看一下3個(gè)瀏覽器都返回了什么看下面。
//ie ua=mozilla/4.0 (compatible; msie 8.0; windows nt 5.2; trident/4.0; qqpinyin 730; .net clr 1.1.4322)
//firefox ua=mozilla/5.0 (windows; u; windows nt 5.2; zh-cn; rv:1.9.2) gecko/20100115 firefox/3.6
//chrome ua=mozilla/5.0 (windows; u; windows nt 5.2; en-us) applewebkit/532.5 (khtml, like gecko) chrome/4.0.249.0 safari/532.5

//可以看出上面的瀏覽器 IE msie 8.0 firefox firefox/3.6 chrome chrome/4.0.249
//我們只要用正則找出字符串里面是能匹配這幾個(gè)關(guān)鍵地方就可以找出是哪個(gè)瀏覽器了。
//看下面正則 firefox 的正則表達(dá)式 /firefox//([/d/.]+)/
//firefox// 匹配了一個(gè) firefox/ 這樣一個(gè)字符
//([/d/.]+) ()表示需要捕獲匹配的字符。后面可以用[1]的方式來獲取版本號就是他的功勞了。
//[]表示把/d/.括起來當(dāng)成一個(gè)整體 沒別的意思
///d 匹配一個(gè)數(shù)字 /. 匹配一個(gè) . 加在一起就可以匹配 8. 這樣的東西了
//[]+ []外面還有個(gè)+ 他會把[] 里面原來匹配的東西重復(fù) 于是變成了這樣 8.8.8.8. 當(dāng)然這樣也可以 48.1.563
sys.firefox=ua.match(/firefox//([/d/.]+)/);
sys.ie=ua.match(/msie/s([/d/.]+)/);
//msie/s([/d/.]+)
// ie的就基本跟火狐一樣了 沒什么太大的區(qū)別
// msie 8.0 /s 就是匹配 msie和8.0 中間的一個(gè)空格
sys.chrome=ua.match(/chrome//([/d/.]+)/);
//chrome//([/d/.]+)
//跟火狐的一樣
})();

//使用
if(sys.firefox){
alert(true)
}else{
alert(false)
}
if(sys.ie[1]=="8.0"){
alert(true)
}else{
alert(false)
}

alert(sys.firefox);
alert(sys.ie);
alert(sys.chrome);
//只有當(dāng)前瀏覽器的sys才能使用[1]返回版本號
alert(sys.firefox[1]);
//alert(sys.ie[1]);
//alert(sys.chrome[1]);

我遇到一個(gè)問題。我看到高手有這樣寫的

firefox//([/d.]+)//高手的
firefox//([/d/.]+)//我的
//我很疑惑 到底這兩個(gè)有什么區(qū)別。我用很多STR 測試了。沒看出什么區(qū)別//難道[/d.]+ 跟 [/d/.]+一樣么?求高手解答。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 达拉特旗| 紫阳县| 静海县| 巴塘县| 红河县| 乐陵市| 望奎县| 双峰县| 黄龙县| 天祝| 陆川县| 焦作市| 东阳市| 平山县| 张家界市| 垫江县| 咸丰县| 蓬莱市| 乌恰县| 湘潭市| 荔波县| 河津市| 嘉祥县| 永昌县| 贞丰县| 宜昌市| 读书| 叶城县| 大竹县| 平山县| 莫力| 台湾省| 张掖市| 于田县| 伽师县| 扎兰屯市| 静安区| 鄂州市| 南平市| 沂南县| 尚志市|