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