Ich habe in letzter Zeit an vielen HTML5-Projekten gearbeitet und viele Seiten werden über SNS wie WeChat und Weibo geteilt. Stellen Sie auf der Freigabeseite Downloads der Unternehmens-APP bereit. In vielen Anwendungsbrowsern kann die Anwendung jedoch nicht heruntergeladen werden, wenn auf den Download-Link geklickt wird. Dann müssen wir für diese Browser Benutzer auffordern, die freigegebene Seite über Safari oder den systemeigenen Browser zu öffnen. Mithilfe von js können wir ermitteln, in welchem Browser die aktuelle Seite geöffnet wird.
Das Folgende ist ein Beispielcode, der zeigt, wie JS verwendet wird, um festzustellen, ob es im WeChat-Browser geöffnet ist, ob es sich im QQ Space Browser befindet und ob Es ist in Open Sina Weibo . Natürlich kann es noch perfekter gemacht werden, und die Beurteilung ist, ob es auf einem Mobilgerät oder auf einem PC geöffnet wird Browser öffnet Weitere Informationen finden Sie in diesem Artikel. Es kann davon ausgegangen werden, dass er im Browser des Android-Systems geöffnet wird > oder IOS-Systembrowser öffnet .
if (browser.versions.mobile) {//判断是否是移动设备打开。browser代码在下面 var ua = navigator.userAgent.toLowerCase();//获取判断用的对象 if (ua.match(/MicroMessenger/i) == "micromessenger") { //在微信中打开 } if (ua.match(/WeiBo/i) == "weibo") { //在新浪微博客户端打开 } if (ua.match(/QQ/i) == "qq") { //在QQ空间打开 } if (browser.versions.ios) { //是否在IOS浏览器打开 } if(browser.versions.android){ //是否在安卓浏览器打开 } } else { //否则就是PC浏览器打开 }
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('Linux') > -1, //android终端或uc浏览器 iPhone: u.indexOf('iPhone') > -1, //是否为iPhone或者QQHD浏览器 iPad: u.indexOf('iPad') > -1, //是否iPad webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部 }; }(), language: (navigator.browserLanguage || navigator.language).toLowerCase() }
Nachdem ich nach Informationen gesucht hatte, erreichte ich endlich den Effekt und gab den Code direkt ein
function is_weixn(){ var ua = navigator.userAgent.toLowerCase(); if(ua.match(/MicroMessenger/i)=="micromessenger") { return true; } else { return false; } }
function is_weixin(){ if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false ) { return true; } return false; }