在iOS7 Safari历史记录中返回时禁用jQuery Mobile转换

时间:2014-04-13 07:45:46

标签: jquery-mobile

正如在iOS7上的Safari中描述的here - 如果从屏幕左侧滑入,它会触发历史记录返回事件,就像用户点击后退按钮一样。

jQuery Mobile的默认行为是在返回上一页时反转用于访问特定页面的转换。这在使用<>按钮时效果很好,但从左侧滑入时看起来很糟糕。

有没有办法完全禁用“反向”转换?使用jQuery mobile的方向?

1 个答案:

答案 0 :(得分:1)

只需捕获页面小部件上的pagecontainerbeforetransition事件。

然后,您可以查看ui.options.reverse并取消转换。如果你想要,你可以检测到iOS7,但我想我会把它交给我的所有访客。

    $(document).on("pagecontainerbeforetransition", function (event, ui)
    {
        if (ui.options.reverse == true)
        {
            ui.options.transition = "none";
        }
    });

以下是典型ui.options对象的示例。

{"reverse":true,"changeHash":false,"fromHashChange":true,"showLoadMsg":true,
 "allowSamePageTransition":false,"transition":"none"}

出于某种原因,即使向前导航,reverse似乎总是如此。可能是一个但是,但无论如何我决定检查它。