如何在JQM中全屏显示Fancybox图像时阻止后退按钮上的页面更改?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在JQM中全屏显示Fancybox图像时阻止后退按钮上的页面更改?相关的知识,希望对你有一定的参考价值。

当Fancybox图像处于全屏模式时,初始任务是处理硬件后退按钮。现在,当用户按下电话上的后退按钮时,当前页面变为前一页,而富士通图像保持在前景。任务是关闭Fancybox图像并保持当前页面。我是这样做的:

$(document).on("pagecontainerbeforechange", function (e, data) {
  if (typeof data.toPage == "string" && data.options.direction == "back") {
    if ($(".fancybox-is-open").length) {
      // close fancybox
      $.fancybox.close();

      // stay at current page
      data.toPage = '#' + $.mobile.activePage.data('url');
      $.extend(data.options, {
        changeHash: true
      });
    }
  }
});

Fancybox关闭,用户停留在当前页面,但当他再次单击“返回”按钮时,他会进入页面,这是在前一页之前。如何正确防止页面更改?

答案

当我开始使用fancybox gallery小部件时,问题自己解决了。旧问题链接是:

<a href="image_thumb" data-fancybox data-caption="caption"><img src="image_full" /></a>

新链接是:

<a href="image_thumb" data-fancybox="gallery" data-caption="caption"><img src="image_full" /></a>

并且不需要js附加代码。

以上是关于如何在JQM中全屏显示Fancybox图像时阻止后退按钮上的页面更改?的主要内容,如果未能解决你的问题,请参考以下文章

在 WebView 中全屏视频后隐藏菜单栏和停靠

如何在Landscape中全屏显示UISplitViewController的DetailView

如何在 PowerShell 中全屏显示

如何使 jQuery Mobile 弹出窗口出现在设备的全屏中

如何在带有新窗口和特定显示器的窗口中全屏启动 chrome 浏览器

在 Fabric.js 中全屏显示画布