JavaScript判斷移動(dòng)端及pc端訪問不同的網(wǎng)站
現(xiàn)在很多網(wǎng)站都是分為兩個(gè)版本代兵,一個(gè)pc端的一個(gè)移動(dòng)端的(響應(yīng)式除外)痢法,針對(duì)這兩個(gè)版本哀蘑,就需要對(duì)訪問的設(shè)備進(jìn)行判斷,如果是pc份招,就直接訪問pc網(wǎng)站读串,否則就訪問移動(dòng)端網(wǎng)站哟冬。
對(duì)于這個(gè)問題可以通過判斷UA來解決矩距,前端js可以判斷,后端判斷也行础钠,這里我們主要討論的是如何通過js來處理恰力。
假如我們有一個(gè)網(wǎng)站,pc端通過www.test.com訪問旗吁,而移動(dòng)端通過m.test.com來訪問踩萎。我們需要做的就是當(dāng)移動(dòng)端訪問www.test.com時(shí)可以直接跳轉(zhuǎn)到m.test.com。此時(shí)我們只需這樣處理就可以了很钓,在頁面頭部加入如下js代碼
`stringObject.indexOf(searchvalue,fromindex)`
(function(){varurl=location.href;// replace www.test.com with your domainif((url.indexOf('www.test.com')!=-1)&&navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)){location.;}})();
但是香府,多數(shù)情況下不止這么簡(jiǎn)單地直接從www.test.com跳轉(zhuǎn)到m.test.com。我們網(wǎng)站除了主機(jī)名部分码倦,后面跟的還有企孩,比如:www.test.com/list/98/,對(duì)于這樣一個(gè)url袁稽,PC就直接這樣訪問了勿璃,對(duì)于移動(dòng)端,需要通過m.test.com/list/98/才可以呈現(xiàn)出比較好的效果推汽。
那么补疑,此時(shí)就可以用正則來處理,當(dāng)移動(dòng)端訪問時(shí)歹撒,我們把“http://www”替換為“http://m”(冒號(hào)為英文冒號(hào))莲组,然后更新頁面就可以看到頁面在移動(dòng)端上呈現(xiàn)的效果了。具體代碼如下:
(function(){varurl=location.href;// replace www.test.com with your domainif((url.indexOf('www.test.com')!=-1)&&navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)){varnewUrl=url.replace('http://www','http://m');location.href=newUrl;}})();