当在* ipad上的Safari上按“返回”按钮时,不会收到javascript – “pageshow”

我有以下处理程序:

$(window).bind('pageshow', function() { alert("back to page"); });

当我离开页面(通过按下链接)并返回页面(按“返回”按钮)时,不会调用alert()(IPad 2,iOS 5.1).

我做错了吗?我需要绑定的任何其他事件?

PS:有趣的是,当从页面导航时正确接收到页面隐藏.

您可以检查pageshow事件的持久属性.初始页面加载时设置为false.从缓存加载页面时,将其设置为true.

window.onpageshow = function(event) {
    if (event.persisted) {
        alert("back to page");
    }
};

由于某种原因,jQuery在事件中没有此属性.你可以从原始的事件中找到它.

$(window).bind("pageshow", function(event) {
    if (event.originalEvent.persisted) {
      alert("back to page");
    }
};
相关文章
相关标签/搜索