网站访问者UA检测及跳转
/*!
* 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检测及跳转的更多相关文章
- php或js判断网站访问者来自手机或者pc
php或js判断网站访问者来自手机或者pc机 2013年9月26日,在弄wtuonline的时候为了区分用户是来自手机版浏览器还是pc,针对不同平台选择不同的网站版本,最终总结如下: ...
- php或js判断网站访问者来自手机或者pc机
php或js判断网站访问者来自手机或者pc机 2013年9月26日,在弄wtuonline的时候为了区分用户是来自手机版浏览器还是pc,针对不同平台选择不同的网站版本,最终总结如下: ...
- 一种基于自定义代码的asp.net网站首页根据IP自动跳转指定页面的方法!
一种基于自定义代码的asp.net网站首页根据IP自动跳转指定页面的方法! 对于大中型网站,为了增强用户体验,往往需要根据不同城市站点的用户推送或展现相应个性化的内容,如对于一些大型门户网站的新闻会有 ...
- 网站WAF的检测
[wafw00f]: 项目地址: https://github.com/sandrogauci/wafw00f WAFW00F是识别和指纹Web应用防火墙(WAF)产品,其工作原理是首先通过发送一个正 ...
- JS版本网站资源状态检测
Title:JS版本网站资源状态检测 --2012-08-28 14:08 前几天需要一个网站状态检测的东东,后面写了个蹩脚的JS版本,里面用到了以前没用过的东西,在这里记下来,其实批处理加curl ...
- YUI的UA检测
YUI.UA是针对javascript的宿主环境检测的一个检测对象,返回的是一系统关于当前宿主的信息 1.对象相关信息列表及userAgent 检测对象o = { ie: 0, //ie Mozill ...
- 【转载】网站配置Https证书系列(三):IIS网站设置Http链接直接跳转Https安全连接
Http链接请求是以明文的方式传输,在传输的过程中很容易被篡改数据,一个典型的例子就是运营商的网络劫持注入广告信息等,而Https请求则是安全加密的请求,报文数据以密文的形式进行传输.当IIS网站配置 ...
- 根据浏览器UA信息进行跳转(移动和pc)
如何用php判断一个客户端是手机还是电脑?其实很简单,开发人员都知道,通过浏览器访问网站时,浏览器都会向服务器发送UA,即User Agent(用户代理).不同浏览器.同一浏览器的不同版本.手机浏览器 ...
- php或js判断网站访问者来自手机或者pc端源码
很多时候也可以通过逻辑程序来进行判断,如PHP.JS是常用的两种识别访问设备类型的常用方法. 原理都是采用识别访问客户端的HTTP_USER_AGENT,然后进行关键字匹配进行确定设备类型,对于伪造H ...
随机推荐
- PHP + NGINX 控制视频文件播放,并防止文件下载
最简单的方法是使用NGINX的 internal 功能 server { listen 80; server_name www.xxx.com; location / { ...
- Appium -选择、操作元素
选择界面元素 操作元素(点击.输入字符.拖拽.获取页面元素的各种属性) 根据Appium获取的数据进行分析和处理 desired_capabilities 查看appPackage 和appActiv ...
- node.js 爬虫动态代理ip
参考文章: https://andyliwr.github.io/2017/12/05/nodejs_spider_ip/ https://segmentfault.com/q/10100000081 ...
- delphi query阻塞执行 长时间执行sql的解决办法
delphi query 执行sql一直是阻塞执行,执行长时间的sql语句,程序没响应了,这时候只能用线程技术解决. 如今FDQuery有了CmdExecMode属性,可以设置amCancelDial ...
- 【JEECG技术文档】JEECG平台对外接口JWT应用文档V3.7.2
一. 接口方式 接口调用采用http协议,rest请求方式: 二. 接口安全 接口安全采用Json web token (JWT)机制,基于token的鉴权机制. 1. 机制说明 基于token的鉴权 ...
- 01-css的引入方式和常用选择器
一.css介绍 现在的互联网前端分三层: HTML:超文本标记语言.从语义的角度描述页面结构. CSS:层叠样式表.从审美的角度负责页面样式. JS:JavaScript .从交互的角度描述页面行为 ...
- ABAP-2-会计凭证批量数据导入本地ACCESS
ABAP-1-会计凭证批量数据导入本地ACCESS 上一版本出现问题: A.若TXT数据条目超过800万(大概1.3G),则将TXT导入ACCESS过程不成功,ACCESS数据表为空.(Access单 ...
- Python 基础补充(一) 列表、元组、集合、字典的区别和相互转换
一.列表.元组.集合.字典的区别 列表 元组 集合 字典 英文 list tuple set dict 可否读写 读写 只读 读写 读写 可否重复 是 是 否 是 存储方式 值 值 键(不能重复) ...
- 3:while、for 循环语句
循环就是重复的做一件事情.python 中的循环语句有 while 和 for. while 循环 while 循环必须得有一个计数器,否则会变成一个死循环. # 例如这段代码,这段程序运行之后会一直 ...
- RabbitMQ系列教程之五:主题(Topic)(转载)
RabbitMQ系列教程之五:主题(Topic) (本实例都是使用的Net的客户端,使用C#编写),说明,中文方括号[]表示名词. 在上一个教程中,我们改进了我们的日志记录系统. 没有使用只能够进行虚 ...