如今不少網站都是分爲兩個版本,一個pc端的一個移動端的(響應式除外),針對這兩個版本,就須要對訪問的設備進行判斷,若是是pc,就直接訪問pc網站,不然就訪問移動端網站。javascript
對於這個問題能夠經過判斷UA來解決,前端js能夠判斷,後端判斷也行,這裏咱們主要討論的是如何經過js來處理。前端
假如咱們有一個網站,pc端經過www.test.com訪問,而移動端經過m.test.com來訪問。咱們須要作的就是當移動端訪問www.test.com時能夠直接跳轉到m.test.com。此時咱們只需這樣處理就能夠了,在頁面頭部加入以下js代碼:java
(function () { var url = location.href; // replace www.test.com with your domain if ( (url.indexOf('www.test.com') != -1) && navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i) ) { location.href = 'http://m.test.com'; } })();
可是,多數狀況下不止這麼簡單地直接從www.test.com跳轉到m.test.com。咱們網站除了主機名部分,後面跟的還有,好比:www.test.com/list/98/,對於這樣一個url,PC就直接這樣訪問了,對於移動端,須要經過m.test.com/list/98/才能夠呈現出比較好的效果。ios
那麼,此時就能夠用正則來處理,當移動端訪問時,咱們把「http://www」替換爲「http://m」(冒號爲英文冒號),而後更新頁面就能夠看到頁面在移動端上呈現的效果了。具體代碼以下:後端
(function () { var url = location.href; // replace www.test.com with your domain if ( (url.indexOf('www.test.com') != -1) && navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i) ) { var newUrl = url.replace('http://www', 'http://m'); location.href = newUrl; } })();
Ok,以上就是移動端及PC端網站訪問的問題。dom