作者tomin (弱水三千 只取一瓢饮)
看板Ajax
标题Re: [问题] 如何补捉jQ Mobile外部连结失败的例外?
时间Wed Jun 11 10:34:14 2014
※ 引述《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
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.99.129.37
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Ajax/M.1402454056.A.D86.html
2F:推 dream1124:非常感谢, 试过一下果然可以, 非常感谢!! 06/12 20:33