1
我想確定在iPhone Safari上使用自定義URL方案安裝的應用程序。確定在iPhone上使用Safari安裝的應用程序
你可能認爲這是不可能的,但JavaScript幫助我弄清楚了這一點。
<script>(function(){
var fallbackLink = '<?=$info['failed_url']?>'+window.location.search+window.location.hash;
var isiOS = navigator.userAgent.match('iPad') || navigator.userAgent.match('iPhone'),
isAndroid = navigator.userAgent.match('Android');
if (isiOS || isAndroid) {
document.getElementById('loader').src = '<?=$info['scheme']?>://'+window.location.search+window.location.hash;
fallbackLink = isAndroid ? '<?=$info['failed_url']?>' :
'<?=$info['failed_url']?>' ;
}
window.setTimeout(function(){ window.location.replace(fallbackLink); }, 1000);
})();</script>
這是我的腳本。
我已經知道iPhone應用程序的自定義URL方案。它成功啓動應用程序,如果它存在於iPhone上。但是,如果iPhone沒有應用程序,它會重定向到不同的頁面。
我在失敗的網頁上放置了一些代碼,注意到用戶沒有該應用程序。我的計劃是完美的,直到我找到這個。
即使應用程序在超時後在iPhone上啓動,JavaScript重定向也能正常工作。
如果iPhone啓動應用程序,有沒有辦法停止JavaScript?
謝謝。
我使用了這段代碼,它不會重定向到fallbackLink – Jake 2012-08-14 14:51:15
它不會暫停超時。 – Jake 2012-08-14 16:34:07
有錯誤的方式 – Jake 2012-08-14 16:35:27