/*!
* UA检测及跳转
*/
;(function(){
var whatdevice = {};
var myUA = window.navigator.userAgent.toLowerCase();
//正则得小写

/*
* 是否移动设备:返回Boolean。
*/
whatdevice.isMobile = /(?:micromessenger|mobile|iphone|ipod|android|coolpad|mmp|smartphone|midp|wap|xoom|symbian|j2me|blackberry|windows phone|win ce)/.test(myUA);

/*
* 跳转到手机网站:参数1是手机网站网址。
* 使用方法:whatdevice.go2mob('手机网站网址') 若不想跳转,当前访问的URL传递参数itsme=1,如http://www.hiry.cn/网站?itsme=1
*/
whatdevice.go2mob = function(){
var mobUrl = arguments[0]; //参数1
var myArg = [];
myArg = window.location.search.substr(1).match(/(^|&)itsme=([^&]*)(&|$)/i); //获取URL参数itsme
var itsme = (myArg != null && myArg[2] != null)?myArg[2]:0;
if(itsme != 1 && mobUrl != null && whatdevice.isMobile){
window.location.href = mobUrl;
}
};

/*
* 跳转到电脑网站:参数1是电脑网站网址。
* 使用方法:whatdevice.go2web('电脑网站网址') 若不想跳转,当前访问的URL传递参数itsme=1,如m.b5f.cn/?itsme=1
*/
whatdevice.go2web = function(){
var webUrl = arguments[0]; //参数1
var myArg = [];
myArg = window.location.search.substr(1).match(/(^|&)itsme=([^&]*)(&|$)/i); //获取URL参数itsme
var itsme = (myArg != null && myArg[2] != null)?myArg[2]:0;
if(itsme != 1 && webUrl != null && !whatdevice.isMobile){
window.location.href = webUrl;
}
};

/*
* 是否苹果手机:返回Boolean。
*/
whatdevice.isiOS = /(?:iphone)/.test(myUA);

/*
* 是否安卓手机:返回Boolean。
*/
whatdevice.isAndroid = /(?:android)/.test(myUA);

/*
* 是否微信浏览器:返回Boolean。
*/
whatdevice.isWechat = /(?:micromessenger)/.test(myUA);

/*
* 是否微信小程序:返回Boolean。
*/
whatdevice.isMiniProgram = window.__wxjs_environment === 'miniprogram';

/*注册全局变量*/
window.whatdevice = whatdevice;
})();

网站访问者UA检测及跳转的更多相关文章

  1. php或js判断网站访问者来自手机或者pc

    php或js判断网站访问者来自手机或者pc机 2013年9月26日,在弄wtuonline的时候为了区分用户是来自手机版浏览器还是pc,针对不同平台选择不同的网站版本,最终总结如下:         ...

  2. php或js判断网站访问者来自手机或者pc机

    php或js判断网站访问者来自手机或者pc机 2013年9月26日,在弄wtuonline的时候为了区分用户是来自手机版浏览器还是pc,针对不同平台选择不同的网站版本,最终总结如下:         ...

  3. 一种基于自定义代码的asp.net网站首页根据IP自动跳转指定页面的方法!

    一种基于自定义代码的asp.net网站首页根据IP自动跳转指定页面的方法! 对于大中型网站,为了增强用户体验,往往需要根据不同城市站点的用户推送或展现相应个性化的内容,如对于一些大型门户网站的新闻会有 ...

  4. 网站WAF的检测

    [wafw00f]: 项目地址: https://github.com/sandrogauci/wafw00f WAFW00F是识别和指纹Web应用防火墙(WAF)产品,其工作原理是首先通过发送一个正 ...

  5. JS版本网站资源状态检测

    Title:JS版本网站资源状态检测  --2012-08-28 14:08 前几天需要一个网站状态检测的东东,后面写了个蹩脚的JS版本,里面用到了以前没用过的东西,在这里记下来,其实批处理加curl ...

  6. YUI的UA检测

    YUI.UA是针对javascript的宿主环境检测的一个检测对象,返回的是一系统关于当前宿主的信息 1.对象相关信息列表及userAgent 检测对象o = { ie: 0, //ie Mozill ...

  7. 【转载】网站配置Https证书系列(三):IIS网站设置Http链接直接跳转Https安全连接

    Http链接请求是以明文的方式传输,在传输的过程中很容易被篡改数据,一个典型的例子就是运营商的网络劫持注入广告信息等,而Https请求则是安全加密的请求,报文数据以密文的形式进行传输.当IIS网站配置 ...

  8. 根据浏览器UA信息进行跳转(移动和pc)

    如何用php判断一个客户端是手机还是电脑?其实很简单,开发人员都知道,通过浏览器访问网站时,浏览器都会向服务器发送UA,即User Agent(用户代理).不同浏览器.同一浏览器的不同版本.手机浏览器 ...

  9. php或js判断网站访问者来自手机或者pc端源码

    很多时候也可以通过逻辑程序来进行判断,如PHP.JS是常用的两种识别访问设备类型的常用方法. 原理都是采用识别访问客户端的HTTP_USER_AGENT,然后进行关键字匹配进行确定设备类型,对于伪造H ...

随机推荐

  1. C# NPOI生成Excel文档(简单样式)

    效果图: 代码:  /// <summary> /// 导出Excel /// </summary> /// <param name="DeptId" ...

  2. pm2操作总结

    PM2是一个node.js的进程管理器,(并且呢在应用程序的生产运行时自带负载均衡的这种操作,很厉害): -->  pm2主要解决的问题是kill node进程时无法正常停止的问题. 主要特征: ...

  3. 修改Tomcat的网页端口和指向路径

    网页端口是在 D:\web\apache-tomcat-6.0.32\conf 下的server.xml <Connector port="8080" protocol=&q ...

  4. django 模板context的理解

    context作为view与template之间的桥梁,理解它的工作原理对于djagno的模板工作机制至关重要. class ContextDict(dict):#上下文词典,由词典可以通过conte ...

  5. oracle查询重复的数据

    在oracle中,每一条记录都有一个rowid,rowid在整个数据库中是唯一的,rowid确定了每条记录是oracle中的哪一个数据文件.块.行上.在重复的记录中,可能所有列的内容都相同,但rowi ...

  6. python linux 下开发环境搭建

    1.1: 在虚拟环境目录下安装 ipython  => pip install ipython 1.2: 简单的使用 => ipthyon => print("heollo ...

  7. Linux上VNC常见命令

    参考链接: http://blog.csdn.net/russle/article/details/4757888 http://www.linuxidc.com/Linux/2016-06/1320 ...

  8. System.Types.hpp(77): E2029 'TObject' must be a previously defined class or struct

    System.Types.hpp System.Types.hpp(77): E2029 'TObject' must be a previously defined class or struct ...

  9. Java设计模式——合成/聚合复用原则

    一.什么是合成/聚合复用原则? 合成/聚合复用原则是在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分:新的对象通过向这些对象的委派达到复用已有功能的目的. 简述为:要尽量使用合成/聚合,尽 ...

  10. 配置阿里云的金融云上的rsync

    论坛里看到易淘发的教程, 转载过来