掃二維碼自動識別安卓蘋果端

相信很多朋友都遇到過這樣的一種情況吧,老板要求一個二維碼集成2個鏈接(安卓和蘋果)艾扮,手機一掃就可以自動識別安卓機和蘋果機了阴颖。但是怎么實現(xiàn)又犯難了吧,百度了很多都找不到合適的答案挽放,我特此在這寫那么一篇關(guān)于這要求的文章,希望可以幫助到你蔓纠。
思路:
二維碼就無非是一個URL辑畦,所以根據(jù)這個思路是需要一個頁面,承載這個URL腿倚,在這個頁面中進行處理識別安卓機和蘋果機纯出,但是微信的安全性做了限制,一般都會屏蔽來源不是騰訊的 APK,所以需要在用戶掃二維碼之后給用戶一個提示敷燎,讓他去跳轉(zhuǎn)暂筝。這就和HTML有關(guān)系了。
步驟:
新建一個網(wǎng)頁(HTML)

<!DOCTYPE html>
<html lang="zh_CN">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="description" content="">
<meta name="keywords" content="">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<meta name="renderer" content="webkit">
  <link rel="stylesheet" href="./css/download.css">
<title>醫(yī)務通APP下載</title>
</head>
<body class="success">
<div id="weixin-tip"><p><img src="./download_files/live_weixin.png" alt="微信打開"><span id="close" title="關(guān)閉" class="close">X</span></p></div>
<script type="text/javascript">
var is_weixin = (function() {
    var ua = navigator.userAgent.toLowerCase();
    if (ua.match(/MicroMessenger/i) == "micromessenger") {
        return true;
    } else {
        return false;
    }
})();
function showFilter(){
if(is_weixin) {
var winHeight = typeof window.innerHeight != 'undefined' ? window.innerHeight : document.documentElement.clientHeight;
var tip = document.getElementById('weixin-tip');
tip.style.height = winHeight + 'px';
tip.style.display = 'block';
}}
function delayURL(url, time) {
setTimeout("top.location.href='" + url + "'", time);
}
var browser={
versions:function(){
var u = navigator.userAgent, app = navigator.appVersion;
return {
trident: u.indexOf('Trident') > -1, //IE內(nèi)核
presto: u.indexOf('Presto') > -1, //opera內(nèi)核
webKit: u.indexOf('AppleWebKit') > -1, //蘋果硬贯、谷歌內(nèi)核
gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐內(nèi)核
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
symbian: u.indexOf('Symbian') > -1, //是否Symbian
webApp: u.indexOf('Safari') == -1 //是否web應該程序焕襟,沒有頭部與底部
};
}()
}
var isMobile = browser.versions.ios || browser.versions.android || browser.versions.symbian;
var cWidth = document.body.clientWidth;
var sWidth = window.screen.width;
var tWidth = (document.body.clientWidth + window.screen.width)/2;
var fontSize = isMobile?parseInt(tWidth/9):parseInt(tWidth/30);
var imgWidth = isMobile?parseInt(tWidth/1.5):parseInt(tWidth/4.5);
var imgHeight = parseInt(imgWidth*(16/49));
var imgWidth2 = isMobile?parseInt(tWidth/4):parseInt(tWidth/12);
var imgHeight2 = parseInt(imgWidth2*(54/124));
var cot ="";
var dev ="<center>";
if(browser.versions.iPad || browser.versions.iPhone){
cot +="<a href=' http://itunes.apple.com/cn/app/id472208016?mt=8 ' class='android-btn' id='ios_weixin'></a>";
showFilter();
dev ="I"
}else if(browser.versions.android){
cot +="<a href=' http://download.kugou.com/download/kugou_android ' class='android-btn' id='J_weixin'></a>";
showFilter();
dev ="A"
}else if(browser.versions.symbian){
dev ="S";
}else{
cot +="<a  class='android-btn' id='ios_weixin'></a>" +
"<a  class='android-btn' id='J_weixin'></a>";
}
cot += "</center>"
</script>    
<div class="page-wrap">
<div class="download">
<h3 class="entry-hd"></h3>
<div class="download-btn" id="=dl">
<script type="text/javascript">
document.write(cot);
window.onload = function(){
var winHeight = typeof window.innerHeight != 'undefined' ? window.innerHeight : document.documentElement.clientHeight;
var tip = document.getElementById('weixin-tip');
var close = document.getElementById('close')
close.onclick = function(){
tip.style.display = 'none';
}
if(dev=="A"){
var btn = document.getElementById('J_weixin');
if(is_weixin) {
btn.onclick = function(){
tip.style.height = winHeight + 'px';
tip.style.display = 'block';
return false;
}}
else{
if (/msie/i.test(navigator.userAgent)){ //ie brower
document.getElementById("J_weixin").click();
}else{
var e = document.createEvent('MouseEvent');
e.initEvent('click', false, false);
setTimeout(document.getElementById("J_weixin").dispatchEvent(e),2000);
}}}
else if( dev == "I"){
var btn_ios = document.getElementById('ios_weixin');
if(is_weixin){
btn_ios.onclick = function(){
tip.style.height = winHeight + 'px';
tip.style.display = 'block';
return false;
}}
else{
if (/msie/i.test(navigator.userAgent)){ //ie brower
document.getElementById("ios_weixin").click();
}else{
var e = document.createEvent('MouseEvent');
e.initEvent('click', false, false);
setTimeout(document.getElementById("ios_weixin").dispatchEvent(e),2000);
}}}}
</script></div></div></div>
</body></html>

CSS樣式
>@charset "utf-8";
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}
html,body{width:100%}
body{font-family:Arial,Helvetica,sans-serif;line-height:1.6;background:#fff;font-size:14px;color:#333;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}
img,a img,img:focus{border:0;outline:0}
img{max-width:100%;height: auto;}
textarea,input,a,textarea:focus,input:focus,a:focus{outline:none}
h1,h2,h3,h4,h5,h6{font-weight:normal;margin-bottom:15px;line-height:1.4}
h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{font-weight:inherit;color:#444444}
body{font-size: 62.5%; font-family: 'Microsoft Yahei','\5FAE\8F6F\96C5\9ED1',Arial,'Hiragino Sans GB','\5B8B\4F53'; line-height: 1.6}
li{list-style: none;}
.clearfix{*zoom:1}
.clearfix:before,.clearfix:after{display:table;content:"";line-height:0}
.clearfix:after{clear:both}
.register{background: #62BDC5 url(../img/bg-480.jpg) no-repeat; background-size:cover;}
.logo{height: 17.8%; text-align: center;}
.logo img{display: inline-block; vertical-align: top; font-size: 0; width: 42.5%; margin: 0 auto;}
.device{padding: 15.8% 0 2.18%; text-align: center;}
.device img{width: 53.43%; margin: 0 auto;}
.intro{color: #fff; line-height: 2; padding-bottom: 12.18%; text-align: center; font-size: 2em; text-align: center;}
.intro p{font-size: 1.8em; border-bottom: 1px solid #fff; width: 80%; margin: 0 auto; display: inline-block; letter-spacing: .8em; white-space: nowrap; padding-left: .4em;}
.intro h2{font-size: 2.6em; letter-spacing: .1em; font-weight: bold;}
.intro img{width: 81%; margin: 0 auto;}
.send{padding: 0 6.1% 23%;}
.send-form input{float: left; padding: 15px 10px; width: 65.7%; background:#fff; border: 1px solid #fff; border-radius: 4px; font-size: 2em; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box;}
.send-form button{float: right; padding: 15px 10px; white-space: nowrap; width: 31.7%;  background:#FF6F29; border: 1px solid #FF6F29; border-radius: 4px; font-size: 2em; color: #fff; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box;}
/*.send-form .form-text{ float: left; background: #fff; border:0; border-radius: 4px; font-size: 2.4em;border-top: 10px; border-bottom: 10px;  padding: 10px 3.5%; line-height: 2.5em !important;  width: 59.5%; vertical-align: middle;}
.send-form .form-submit{ float: right; min-width: 66px; background: #FF6F29; -webkit-appearance: none; white-space: nowrap; letter-spacing: -1px; color: #fff; font-size: 2.4em; padding: 2.4% 2%; line-height: 2.5em; border: 0; border-radius: 4px; width: 31.5%;}
*/.wran{color: #f00; padding-top: 8px; font-size: 1.4em; visibility: hidden;}
.entry-con{font-size: 2.4em; text-align: center;}
.entry-hd{font-size: 4em; font-weight: bold; text-align: center;}
.download{color: #4D4D4D; padding: 7.2% 6.8% 9.3%;}
.download .entry-con{color: #8E8F90;}
.download-btn{padding-top: 9%;}
.download-btn a{width: 44.7%; display: inline-block; *display: inline; *zoom: 1; vertical-align: top;}
.download-btn a:hover, .download-btn a:focus{opacity: .8;}
.download-btn .android-btn{padding-left: 9%;}
.footer-bg{background: #2D2D2D; color: #E4E4E4; padding: 3.4% 2%; text-align: center; margin-bottom: 2%;}
.footer-bg .entry-con{font-size: 1.6em;}
.app img{width: 85.15%; margin: 0 auto; display: block; margin-bottom: 3.4%;}
.app .entry-con{padding-bottom: 5.4%; color: #6B6B6B;}
#weixin-tip{display:none; position: fixed; left:0; top:0; background: rgba(0,0,0,0.8); filter:alpha(opacity=80); width: 100%; height:100%; z-index: 100;}
#weixin-tip p{text-align: center; margin-top: 10%; padding:0 5%; position: relative;}
#weixin-tip .close{
    color: #fff;
    padding: 5px;
    font: bold 20px/20px simsun;
    text-shadow: 0 1px 0 #ddd;
    position: absolute;
    top: 0; left: 5%;
}
@media screen and (min-width: 481px){
    .register{background-image: url(../img/bg.jpg);}
    .info{background-image: url(../img/success-bg.jpg);}
}
@media screen and (max-width: 480px){
    .intro{font-size: 1.6em;}
    .intro p{margin: 0 8% 0;}
    .send-form .form-text{font-size: 1.8em;}
    .send-form .form-submit{font-size: 1.8em;}
    .entry-hd{font-size:2.8em;}
    .info .entry-hd{font-size: 4em;}
    .info .long-hd{font-size: 3em;}
    .entry-con, .info-list{font-size: 1.8em;}
    .app .entry-con{font-size: 1.6em;}
    .footer-bg .entry-con{font-size: 1.2em;}
}
@media screen and (max-width:360px){
    .register{background-image: url(../img/bg-360.jpg);}
    .intro{font-size: 1.2em;}
    .intro p{letter-spacing: 1em;}
    .send-form .form-text{font-size: 1.4em; padding:10px 5px;}
    .send-form .form-submit{font-size: 1.4em; padding: 10px 5px;}
    .entry-hd{font-size: 2em;}
    .info .entry-hd{font-size: 3em;}
    .info .long-hd{font-size: 2.2em;}
    .entry-con, .info-list{font-size: 1.4em;}
    .app .entry-con{font-size: 1.4em;}
}
  剛剛新建了一個分享交流群,366270001澄成,期待你們的加入胧洒。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市墨状,隨后出現(xiàn)的幾起案子卫漫,更是在濱河造成了極大的恐慌,老刑警劉巖肾砂,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件列赎,死亡現(xiàn)場離奇詭異,居然都是意外死亡镐确,警方通過查閱死者的電腦和手機包吝,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來源葫,“玉大人诗越,你說我怎么就攤上這事∠⑻茫” “怎么了嚷狞?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵块促,是天一觀的道長。 經(jīng)常有香客問我床未,道長竭翠,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任薇搁,我火速辦了婚禮斋扰,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘啃洋。我一直安慰自己传货,他們只是感情好,可當我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布宏娄。 她就那樣靜靜地躺著损离,像睡著了一般。 火紅的嫁衣襯著肌膚如雪绝编。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天貌踏,我揣著相機與錄音十饥,去河邊找鬼。 笑死祖乳,一個胖子當著我的面吹牛逗堵,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播眷昆,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼蜒秤,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了亚斋?” 一聲冷哼從身側(cè)響起作媚,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎帅刊,沒想到半個月后纸泡,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡赖瞒,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年女揭,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片栏饮。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡吧兔,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出袍嬉,到底是詐尸還是另有隱情境蔼,我是刑警寧澤,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站欧穴,受9級特大地震影響民逼,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜涮帘,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一拼苍、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧调缨,春花似錦疮鲫、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至伤哺,卻和暖如春燕侠,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背立莉。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工绢彤, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蜓耻。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓茫舶,卻偏偏與公主長得像,于是被迫代替她去往敵國和親刹淌。 傳聞我的和親對象是個殘疾皇子饶氏,可洞房花燭夜當晚...
    茶點故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽默認的外補...
    _Yfling閱讀 13,754評論 1 92
  • 深入理解傅里葉變換Mar 12, 2017 這原本是我在知乎上對傅立葉變換有勾、拉普拉斯變換疹启、Z變換的聯(lián)系?為什么要進...
    價值趨勢技術(shù)派閱讀 5,763評論 2 2
  • 1柠衅、垂直對齊 如果你用CSS皮仁,則你會有困惑:我該怎么垂直對齊容器中的元素?現(xiàn)在菲宴,利用CSS3的Transform贷祈,...
    kiddings閱讀 3,166評論 0 11
  • 荷花來自川蜀 是一名合格的代課教師 專門為歇產(chǎn)假人員候補 熱衷教育、兢兢業(yè)業(yè)喝峦、從不言苦 像園丁一樣澆灌學子文化知識...
    蕙蘭漱雪閱讀 148評論 0 6
  • 女人是一所學校势誊,一個成熟的男人必須經(jīng)歷女人這所學校的洗禮才能蛻變?yōu)檎嬲哪腥恕T诂F(xiàn)在這個浮夸和急躁的社會谣蠢,真愛往往...
    雅痞黑桃A閱讀 554評論 0 0