网站访问者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 ...
随机推荐
- JavaScript数组的五个迭代方法的简单实例
<script> //every() var nums = [1,2,3,4,5]; var result = nums.every(function eve(item,index,arr ...
- [Writeup]与佛论禅
[Writeup]与佛论禅 垂死梦中惊坐起,李sin参悟佛真意 看题 沙雕sl宋雷发给我一道题 他用(Quoted-Printable)解出来一个奇怪经文(偷学) 李sin你怎么看?此中必有蹊跷! 前 ...
- node-disconf-client基本配置
node-disconf-client 需要cppm install node-disconf-client var disconf = require (' node-disconf-clien ...
- django之ReverseOneToOneDescriptor
class ReverseOneToOneDescriptor(object): """ Accessor to the related object on the re ...
- 转载:Bootstrap 源码解析
Bootstrap 源码解析 前言 Bootstrap 是个CSS库,简单,高效.很多都可以忘记了再去网站查.但是有一些核心的东西需要弄懂.个人认为弄懂了这些应该就算是会了.源码看一波. 栅格系统 所 ...
- Spring的applicationContext.xml的疑问解析
Spring中注解注入 context:component-scan 的使用说明 通常情况下我们在创建spring项目的时候在xml配置文件中都会配置这个标签,配置完这个标签后,spring就会去自动 ...
- leetcode1022
class Solution(object): def __init__(self): self.li = list() self.sums = 0 def Trace(self,root): if ...
- ssh-keygen生成git ssh密钥
title: ssh-keygen生成git ssh密钥 date: 2018-05-07 08:49:21 tags: [git,ssh-keygen] --- ssh-keygen生成git ss ...
- centos7 自动定时备份mysql数据库
shell脚本:mysqlbak.sh #!/bin/bashPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbinexpo ...
- too many connections 解决方法
最近写javaee项目的时候,mysql报了too many connections的错误,百度的内容有一些有问题,所以我重新写一下我的解决方法. mysql -u root -p 回车输入密码进入m ...