JS判断页面由哪个APP打开(转)

转自:http://blog.csdn.net/shan1991fei/article/details/72885871

我们有个需求:

有一个WEB页面上面有用app打开的按钮,但是在APP页面内部展示的时候是不需要这个按钮的,这时候我们就需要一段判断在哪个APP打开的JS

最好是你们自己的APP可以提供一个返回

[javascript]viewplaincopy

navigator.userAgent.indexOf('')

这样只用单独判断是否在APP内部打开即可,如果没有就只能做大量判断了

[javascript]viewplaincopy

<scripttype="text/JavaScript">

varbrowser={

versions:function(){

varu=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.+MacOSX/),//ios终端

android:u.indexOf('Android')>-1||u.indexOf('Linux')>-1,//android终端或uc浏览器

iPhone:u.indexOf('iPhone')>-1,//是否为iPhone或者QQHD浏览器

iPad:u.indexOf('iPad')>-1,//是否iPad

webApp:u.indexOf('Safari')==-1//是否web应该程序,没有头部与底部

};

}()

}

if(browser.versions.mobile){//判断是否是移动设备打开

varua=navigator.userAgent.toLowerCase();//获取判断用的对象

if(ua.match(/MicroMessenger/i)=="micromessenger"){

//在微信中打开

alert("wexin");

}

/*if(ua.match(/WeiBo/i)=="weibo"){

//在新浪微博客户端打开

alert("weibo");

}

if(ua.match(/QQ/i)=="qq"){

alert("QQ");

}

if(/alipay/ig.test(ua)){

alert("支付宝");

}

if(browser.versions.ios){

alert("IOS浏览器打开");//是否在IOS浏览器打开

}

if(browser.versions.android){

alert("安卓浏览器打开")//是否在安卓浏览器打开

}*/

}else{

alert("PC");

}

</script>

相关推荐