iPhone Web应用程序从睡眠中醒来后,JavaScript事件中断
问题描述:
我正尝试使用jQuery代码构建移动Safari/iPhone网络应用程序,我已经为应用程序的桌面版本编写了代码。我遇到的问题是,当我的手机进入睡眠状态并且运行Web应用程序时,当我将其唤醒(幻灯片解开)时,JavaScript事件处理程序不再起作用。在这种情况下,这意味着当我点击一个通过onclick事件执行AJAX更新的链接时,它实际上会通过在新的Safari窗口中打开页面来链接链接,从而打破本机iPhone应用程序的外观。iPhone Web应用程序从睡眠中醒来后,JavaScript事件中断
$(function() {
var ajaxLoad;
var ajaxClick = function(e) {
e.preventDefault();
e.stopPropagation();
$("body").load($(this).attr("href"), ajaxLoad);
}
ajaxLoad = function() {
$(this).find("a").click(ajaxClick);
}
$("a").bind("click", ajaxClick);
});
当代码工作的链接将在web应用程序框架中打开,当它打破,代码将在一个新的Safari浏览器窗口中打开,突破的结果:
即停止工作的代码实际应用的外观。
答
未经测试 - 但它是否有助于将“返回false”添加到ajaxClick函数的末尾,以便链接不会激活。
如果你会发布一些代码 - 这可能会有所帮助... – Dror 2009-09-24 06:52:36
根据要求,我添加了jQuery代码的问题。 – user177843 2009-09-24 12:28:41
你有没有这个运气?我遇到类似问题: http://*.com/questions/2204438/iphone-jquery-breaks-after-triggering-the-email-overlay – devth 2010-02-05 18:16:24