无感五 2017-08-02 11:39 采纳率: 50%
浏览 1247
已采纳

在手机端浏览器上面如何判断,指定内容在安卓端显示

在手机端浏览器上面如何判断,指定内容在安卓端显示 ,指定内容只在苹果端上面显示

  • 写回答

2条回答 默认 最新

  • cloudyzhao 2017-08-03 00:42
    关注

    第一种:通过判断浏览器的userAgent,用正则来判断是否是ios和Android客户端。代码如下:

    var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端 var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端 alert('是否是Android:'+isAndroid); alert('是否是iOS:'+isiOS);

    第二种:检查是否是移动端(Mobile)、ipad、iphone、微信、QQ等。

    //判断访问终端 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.*/), //是否为移动终端 ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端 android: u.indexOf('Android') > -1 || u.indexOf('Adr') > -1, //android终端 iPhone: u.indexOf('iPhone') > -1 , //是否为iPhone或者QQHD浏览器 iPad: u.indexOf('iPad') > -1, //是否iPad webApp: u.indexOf('Safari') == -1, //是否web应该程序,没有头部与底部 weixin: u.indexOf('MicroMessenger') > -1, //是否微信 (2015-01-22新增) qq: u.match(/\sQQ/i) == " qq" //是否QQ }; }(), language:(navigator.browserLanguage || navigator.language).toLowerCase() }

    使用方法:

    //判断是否IE内核
    if(browser.versions.trident){ alert("is IE"); }
    //判断是否webKit内核
    if(browser.versions.webKit){ alert("is webKit"); }
    //判断是否移动端
    if(browser.versions.mobile||browser.versions.android||browser.versions.ios){ alert("移动端"); }

    检测浏览器语言

    currentLang = navigator.language; //判断除IE外其他浏览器使用语言
    if(!currentLang){//判断IE浏览器使用语言
    currentLang = navigator.browserLanguage;
    }
    alert(currentLang);

    第三种:判断iPhone|iPad|iPod|iOS|Android客户端,来自http://www.fufuok.com/JS-iphone-android.html

    if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) { //判断iPhone|iPad|iPod|iOS
    //alert(navigator.userAgent);

    window.location.href ="iPhone.html";
    } else if (/(Android)/i.test(navigator.userAgent)) { //判断Android
    //alert(navigator.userAgent);
    window.location.href ="Android.html";
    } else { //pc
    window.location.href ="pc.html";
    };

    第四种:判断pc还是移动端

      //判断是否手机端访问 var userAgentInfo = navigator.userAgent.toLowerCase(); var Agents = ["android", "iphone", "symbianos", "windows phone", "ipad", "ipod"]; var ly=document.referrer; //返回导航到当前网页的超链接所在网页的URL for (var v = 0; v < Agents.length; v++) { if (userAgentInfo.indexOf(Agents[v]) >= 0&&(ly==""||ly==null)) { this.location.href='http://m.***.com'; //wap端地址 } }
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题