首页 > 编程 > JavaScript > 正文

js根据手机客户端浏览器类型,判断跳转官网/手机网站多个实例代码

2019-11-20 10:10:55
字体:
来源:转载
供稿:网友

实例一、比较简单粗暴缺少点类型判断

<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>

实例二、代码工整,很多的函数都基于这个增加的功能

<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.href = "http://wap.xiu.com/?from=pc";			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.href = "http://wap.xiu.com/?from=pc";				return;			}			if (browser.versions.Symbian) {				win.location.href = "http://wap.xiu.com/";			}		}	}})(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>

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表