判断当前设备(终端)是手机还是pc端并进行不同的页面跳转

DEMO 1

<script type="text/javascript">
function browserRedirect() {
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= 'm.html';
} else {
// window.location= '';
}
}
browserRedirect();//调用自身,页面一打开就开始跳转
</script>

DEMO 2

<script type="text/javascript">
(function(){
var reWriteUrl = function(url){
if(url){
var Splits = url.split("/"),siteName=window.location.pathname;
if(typeof siteName!=="undefined"){
return "http://m.jb51.net"+siteName;
}
}
};
if(/Android|webOS|iPhone|iPad|Windows Phone|iPod|BlackBerry|SymbianOS|Nokia|Mobile/i.test(navigator.userAgent)){
var url=window.location.href;
var pathname=window.location.pathname;
if(url.indexOf("?mobile")<0){
try{
window.location.href=reWriteUrl(url);
}catch(e){}
}
};
})();
</script>

DEMO 3

//腾讯网的适配代码
  <script type="text/javascript">
  var browser = {
  versions : function() {
  var u = navigator.userAgent, app = navigator.appVersion;
  return {//移动终端浏览器版本信息
  trident : u.indexOf('Trident') > -1, //IE内核
  presto : u.indexOf('Presto') > -1, //opera内核
  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/), //ios终端
  android : u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或者uc浏览器
  iPhone : u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, //是否为iPhone或者QQHD浏览器
  iPad: u.indexOf('iPad') > -1, //是否iPad
  webApp : u.indexOf('Safari') == -1,
  //是否web应该程序,没有头部与底部
  google:u.indexOf('Chrome')>-1
  };
  }(),
  language : (navigator.browserLanguage || navigator.language).toLowerCase()
  }
  document.writeln("语言版本: "+browser.language);
  document.writeln(" 是否为移动终端: "+browser.versions.mobile);
  </script>   
  //其他的适配代码(后缀名为.js 并引用至网页)
  <script type="text/javascript">
  //平台、设备和操作系统
  var system = {
  win: false,
  mac: false,
  xll: false,
  ipad:false
  };
  //检测平台
  var p = navigator.platform;
  system.win = p.indexOf("Win") == 0;
  system.mac = p.indexOf("Mac") == 0;
  system.x11 = (p == "X11") || (p.indexOf("Linux") == 0);
  system.ipad = (navigator.userAgent.match(/iPad/i) != null)?true:false;
  //跳转语句,如果是手机访问就自动跳转到" "里的页面
  if (system.win || system.mac || system.xll||system.ipad) {
  
  } else {
  
  window.location.href = "此处填写你的链接地址";
  }
  </script>

判断当前终端是手机还是pc端并进行不同的页面跳转的更多相关文章

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

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

  2. 在thinkPHP3.2.3框架下实现手机和PC端浏览器的切换

    查看thinkphp版本号方法 打开文件“根目录\ThinkPHP\ThinkPHP.php”下的文件ThinkPHP.php,在22--23行可以看到版本信息THINK_VERSION,如下图: 说 ...

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

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

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

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

  5. Windows 之 手机访问 PC 端本地部署的站点

    测试网页在手机上的显示工具我们可以使用谷歌内核的浏览器,打开开发者工具(F12),在device那里选择设备,然后刷新来查看网页在手机上的显示效果. 但毕竟是模拟的,如果想要在真机上调试该怎么办呢. ...

  6. 我的Android进阶之旅------>Android实现用Android手机控制PC端的关机和重启的功能(三)Android客户端功能实现

    我的Android进阶之旅------>Android实现用Android手机控制PC端的关机和重启的功能(一)PC服务器端(地址:http://blog.csdn.net/ouyang_pen ...

  7. 微信环境支付宝服务窗环境app手机浏览器pc端混合判断

    //微信环境 if(userAgent.match(/micromessenger/) == 'micromessenger'){ }//支付宝服务窗环境else if(userAgent.match ...

  8. 判断是pc端还是手机端,并跳转到相应页面

    <!-- 判断浏览器是否为手机端 -->  <script>     // class     ! function(navigator) {         var user ...

  9. 手机应用PC端演示工具介绍

    写给公司内部用的,所以没什么含量,请免炮轰. 为什么需要在PC端演示? 在Android及IOS系统上开发的手机应用,往往由于设备的限制,无法在演示汇报的场合向在场的众人展示界面,如果有工具可以将手机 ...

随机推荐

  1. ==和is的区别 以及编码和解码

    is和==的区别 1. id() id是python的一个内置函数,通过id()可以查看变量表的值在内存中的地址. s1 = 2 print(id(s1)) # 1514368064 s2 = 2 p ...

  2. 【GDOI2014模拟】服务器

    前言 直到比赛最后几分钟,才发现60%数据居然是一个水dp,结果没打完. 题目 我们需要将一个文件复制到n个服务器上,这些服务器的编号为S1, S2, -, Sn. 首先,我们可以选择一些服务器,直接 ...

  3. hash详细介绍

    转发http://www.cnblogs.com/maybe2030/p/4719267.html (请转步这个网站,写得非常好)

  4. 使用 flex 弹性布局 ,相关教程记录

    一.Flex布局是什么? Flex是Flexible Box的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性. 任何一个容器都可以指定为Flex布局. .box1{ dis ...

  5. React Native 之TouchableOpacity组件

    使用TouchableOpacity组件 实现单击事件只需要声明onPress属性即可,其他同理,实现onPressIn,onPressOut,onLongPress constructor(prop ...

  6. 在volist中用遍历

    $('.InColor').each(function(){ if($(this).val()==1){ $('.absolute').css({"color":"gra ...

  7. Maps.newHashMap 和 new HashMap的区别

    区别: (1)Map<String, Object> result = new HashMap<String,Object>(); 这种是java原生API写法,需要你手动加泛 ...

  8. WIN7系统JavaEE(java+tomcat7+Eclipse)环境配置

    https://jingyan.baidu.com/article/3a2f7c2e62d25e26afd611fa.html WIN7系统JavaEE(java+tomcat7+Eclipse)环境 ...

  9. this._super()

    https://learn.jquery.com/jquery-ui/widget-factory/extending-widgets/ https://api.jqueryui.com/jquery ...

  10. spark 学习网站和资料

    spark 官网首页 https://spark.apache.org/ spark 官网文档 spark scala API 文档 https://spark.apache.org/docs/lat ...