需求
open in app
- 點擊免費下載按鈕,如果本機安裝了此應用,那么就喚醒該應用,如果沒有安裝此應用,那么就跳轉下載鏈接。
- 其實H5中沒有辦法去判斷本機有沒有安裝了哪款應用,但是我們可以設置一個超時時間,如果喚醒應用的時長超過了這個時間,那么就判斷你沒有安裝此應用。
html
// href為該應用的協議,可以向客戶端開發人員獲取, data-download-href為應用的下載地址
<a href="weixin://" data-android-href="{$data.box.urlapk}" data-ios-href="{$data.box.urlapp}" class='open-btn'>免費下載</a>
javascript
// 下載游戲或則打開app
$('.open-btn').on('click', function () {
if (isWechat()) {
// 顯示在瀏覽器中打開
} else {
let href = "";
if (isIos()) {
href = $('.open-btn').attr('data-ios-href');
} else {
href = $('.open-btn').attr('data-android-href');
}
let clickedAt = +new Date();
setTimeout(function () {
// webkitHidden檢測頁面對于用戶的可見性(切換標簽或者切換后臺就不可見了)
!window.document.webkitHidden && setTimeout(function () {
if (+new Date() - clickedAt < 2000) {
window.location = href;
}
}, 500);
}, 500)
}
})
再說一點
根據自己的項目情況來修改代碼就可以了,可能只有安卓應用沒有ios應用,那么自己修改代碼就可以啦,提示用戶沒有ios版的應用
最后
本文到此結束,希望以上內容對你有些許幫助,如若喜歡請記得點個贊
跟關注
哦 ??
image
微信公眾號
「前端宇宙情報局」
,將不定時更新最新、實用的前端技巧/技術性文章,歡迎關注,一起學習 ??