Re: [問題] 如何補捉jQ Mobile外部連結失敗的例外?

作者: tomin (Schrödinger's cat)   2014-06-11 10:34:14
※ 引述《dream1124 (全新開始)》之銘言:
: 請問大家一下
: 如果在 jQuery Mobile 1.3.2 , 1.4.2 版裡面
: 錨點作為按鈕連結外部網頁, 例如
: <a href="http://x.y.com" data-role="button" data-rel="external" />
: 請問要是在 phoneGap 裡面點這個 http://x.y.com 連結失敗
: 有什麼辦法可以補捉例外, 然後通知使用者,
: 而不要讓手機應用程式跳出 Application Error 視窗告知連線失敗呢?
: 我看了一下那些 page 相關的事件和方法, 好像都是針對內部分頁設計的,
: 若想對外部連線也能有這樣的功能,請問有方法嗎?
: 不一定透過 jQuery Mobile 處理,
: 如果 phoneGap 也有類似事件補捉器能處理也可以
: 謝謝大家
如果<a>連結是後來才加進去 就delegate給上層 不然也可以直接綁所有<a>
$(document.body).on('click', 'a', function(e){
e.preventDefault();
//jq1.5之後有fail(), jq2.0之後可檢查cross domain link
var link = $(this).prop('href');
$.getScript(link).done(function() {
console.log("done fired");
location.href = link;
}).fail(function() {
console.log("fail fired");
});
});
相關: http://stackoverflow.com/questions/13476497/
jquery-getscript-function-never-fails
http://tinyurl.com/n4lquaw
作者: tomin (Schrödinger's cat)   2014-06-11 10:34:00
作者: dream1124 (全新開始)   2014-06-12 20:33:00
非常感謝, 試過一下果然可以, 非常感謝!!

Links booklink

Contact Us: admin [ a t ] ucptt.com