js根據手機客戶端瀏覽器類型,判斷跳轉官網/手機網站多個實例代碼
更新時間:2016年04月30日 13:04:06 投稿:mdxy-dxy
這篇文章主要介紹了js根據手機客戶端瀏覽器類型,判斷跳轉官網/手機網站多個實例代碼,需要的朋友可以參考下
實例一、比較簡單粗暴缺少點類型判斷
<script type="text/javascript"> var sUserAgent = navigator.userAgent.toLowerCase(); var bIsIpad = sUserAgent.match(/ipad/i) == "ipad"; var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os"; var bIsMidp = sUserAgent.match(/midp/i) == "midp"; var bIsUc7 = sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4"; var bIsUc = sUserAgent.match(/ucweb/i) == "ucweb"; var bIsAndroid = sUserAgent.match(/android/i) == "android"; var bIsCE = sUserAgent.match(/windows ce/i) == "windows ce"; var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile"; if (bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM ){ window.location.href="3g.php"; } </script>
實例二、代碼工整,很多的函數(shù)都基于這個增加的功能
<script> var pc_style = "" var browser = { versions: function () { var u = navigator.userAgent, app = navigator.appVersion; return { trident: u.indexOf('Trident') > -1, presto: u.indexOf('Presto') > -1, webKit: u.indexOf('AppleWebKit') > -1, gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, mobile: !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/) && u.indexOf('QIHU') && u.indexOf('QIHU') > -1 && u.indexOf('Chrome') < 0, ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, iPad: u.indexOf('iPad') > -1, webApp: u.indexOf('Safari') == -1, ua: u }; }(), language: (navigator.browserLanguage || navigator.language).toLowerCase() } if (browser.versions.mobile && !browser.versions.iPad) { this.location = "此處輸入跳轉微站首頁地址"; } </script>
實例三、增加了一些功能
<!--智能手機判斷開始--> <!-- <script type = "text/javascript" language = "javascript" > Function.prototype.bind = function (bindObj, args) { var _self = this; return function () { return _self.apply(bindObj, [].concat(args)) } }; function $(id) { return "string" == typeof id ? document.getElementById(id) : id; }; var browser = { versions : function () { var u = navigator.userAgent, app = navigator.appVersion; return { trident : u.indexOf('Trident') > -1, presto : u.indexOf('Presto') > -1, webKit : u.indexOf('AppleWebKit') > -1, gecko : u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, mobile : !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/), ios : !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), android : u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, iPhone : u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, iPad : u.indexOf('iPad') > -1, webApp : u.indexOf('Safari') == -1, QQbrw : u.indexOf('MQQBrowser') > -1, ucLowEnd : u.indexOf('UCWEB7.') > -1, ucSpecial : u.indexOf('rv:1.2.3.4') > -1, ucweb : function () { try { return parseFloat(u.match(/ucweb\d+\.\d+/gi).toString().match(/\d+\.\d+/).toString()) >= 8.2 } catch (e) { if (u.indexOf('UC') > -1) { return true; } else { return false; } } } (), Symbian : u.indexOf('Symbian') > -1, ucSB : u.indexOf('Firefox/1.') > -1 }; } () } var _gaq = _gaq || []; (function (win, browser, undefined) { var rf = document.referrer; if (rf === "" || rf.toLocaleLowerCase().indexOf(".xiu.com") === -1) { var defaultJumpDomain = ""; if (defaultJumpDomain == "www") { return; } if (defaultJumpDomain == "m") { window.location.; return; } if (screen == undefined || screen.width < 810) { if (browser.versions.iPad == true) { return; } if (browser.versions.webKit == true || browser.versions.mobile == true || browser.versions.ios == true || browser.versions.iPhone == true || browser.versions.ucweb == true || browser.versions.ucSpecial == true) { win.location.; return; } if (browser.versions.Symbian) { win.location.; } } } })(window, browser); </script> --> <!--智能手機判斷結束-->
實例四、簡潔腳本之家推薦使用,如果您有更好的代碼可以分享
<script type="text/javascript"> var browser = { versions : function () { var u = navigator.userAgent, app = navigator.appVersion; return { trident : u.indexOf('Trident') > -1, presto : u.indexOf('Presto') > -1, webKit : u.indexOf('AppleWebKit') > -1, gecko : u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, mobile : !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/), ios : !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), android : u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, iPhone : u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, iPad : u.indexOf('iPad') > -1, webApp : u.indexOf('Safari') == -1, QQbrw : u.indexOf('MQQBrowser') > -1, weiXin : u.indexOf('MicroMessenger') > -1, ucLowEnd : u.indexOf('UCWEB7.') > -1, ucSpecial : u.indexOf('rv:1.2.3.4') > -1, ucweb : function () { try { return parseFloat(u.match(/ucweb\d+\.\d+/gi).toString().match(/\d+\.\d+/).toString()) >= 8.2 } catch (e) { if (u.indexOf('UC') > -1) { return true; } else { return false; } } } (), Symbian : u.indexOf('Symbian') > -1, ucSB : u.indexOf('Firefox/1.') > -1 }; } (), liulanqi : navigator.userAgent } if (browser.versions.QQbrw){ document.write("qq瀏覽器"); }else { document.write("其它瀏覽器"+browser.liulanqi); } </script>
相關文章
js 動態(tài)為textbox添加下拉框數(shù)據源的方法
這篇文章主要介紹了js 動態(tài)為textbox添加下拉框數(shù)據源的方法,需要的朋友可以參考下2014-04-04JavaScript實現(xiàn)自己的DOM選擇器原理及代碼
實現(xiàn)自己的DOM選擇器時匹配行為也應該和瀏覽原生匹配行為一致,接下來本文將詳細介紹下實現(xiàn)思路及方法,感興趣的你可以參考下或許對你鞏固知識有所幫助2013-03-03