首頁 > web前端 > js教程 > JS跳轉手機站url的若干注意事項實例詳解

JS跳轉手機站url的若干注意事項實例詳解

小云云
發布: 2018-01-09 17:04:43
原創
1767 人瀏覽過

本文主要和大家分享JS跳轉手機站url的若干注意事項實例詳解,希望能幫助大家。

我們手機站平台的設計初衷是對接我們已有的PC站平台,簡單說就是原來我們所有的用戶使用的是我們的PC站服務,現在可以得到一個網站數據與PC站一樣的手機站點。重點是老用戶還不收錢,免費用。 (PC端網站的客戶想想是不是有點小激動呢)上線一段時間,感覺很多客戶還蠻感興趣的,都在自己的手機上安裝了這個那個的二維碼掃面軟體,對著手機網站的二維碼掃啊掃的。

話入正題:

廢話不多說,很多客戶慕名而來,原來不是我們做PC的客戶買了我們的手機站服務,這就產生了從其PC站如何能夠跳到手機站的問題。

我想,透過javascript取得客戶端的 navigator.userAgent 之後使用url跳轉 是一個不錯的方法。

走你-程式碼:

var isMobile = {
  Android: function() {
    return navigator.userAgent.match(/Android/i) ? true : false;
  },
  BlackBerry: function() {
    return navigator.userAgent.match(/BlackBerry/i) ? true : false;
  },
  iOS: function() {
    return navigator.userAgent.match(/iPhone|iPod/i) ? true : false;
  },
  Windows: function() {
    return navigator.userAgent.match(/IEMobile/i) ? true : false;
  },
  Linux: function() {
    return navigator.userAgent.match(/Linux/i) ? true : false;
  },
  any: function() {
    return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Windows() || isMobile.Linux());
  }
};
setTimeout(function() {
  if (isMobile.any()) {
    var body = document.getElementsByTagName('body');
    body[0].style.display='none';
    location.href = "http://m.某某.com/";
  }
}, 10);
登入後複製

簡單分析:

一、在那些裝置上需要跳轉URL?

在XP,win7和mac下,通常不做手機站跳轉的。

市面上的 Android 、BlackBerry 、iOS 、Windows mobile(phone) 、Linux等系統,為大家所常用的手機端作業系統。火狐的webOS,「遠古時代」的諾基亞塞班等等,在國內外好像好沒有市場了,不要去考慮。

二、在頁面跳轉時,有哪些問題?

1.原PC網站需要載入的資源可能很多,跳轉URL之前PC站的頁面可能已經呈現,跳轉的效果太生硬

  解答:js取得終端的特性後,立即將body設定為隱藏

2.使用window.onload 還是setTimeout?

  解答:setTimeout是由我選擇何時執行,而可惡的window.onload需要我等所有的資源下載後去執行我的方法,故我推薦使用setTimeout();

小結:

關於終端設備的判斷,上面的程式碼很膚淺的做了很尷尬的url 跳轉,這是不得已的方法。若是伺服器端根據客戶端的請求頭資訊來判斷設備特性,依此回傳不同的資源是更好的選擇。

相關推薦:

js跳轉方式及程式碼的總結

javascript - 使用php取得一個透過JS跳轉的最終網址

IE中JS跳轉遺失referrer問題的2個解決方法_javascript技巧

以上是JS跳轉手機站url的若干注意事項實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板