关闭jQuery Mobile新弹出窗口无用刷新

Eti*_*gné 9 jquery-mobile

我正在使用带有1.2.0 alpha版本的新jqm弹出窗口,我的问题是当我使用esc键关闭弹出窗口或点击屏幕时,我调用弹出窗口的页面无法刷新...此刷新仅发生我第一次关闭它.如果我重新打开并再次关闭弹出页面,则页面不会刷新...

似乎由于某种原因,jqm历史机械主义搞砸了....

它似乎不是内置功能,因为jqm演示页面中的任何弹出窗口都不会发生这种情况.

不知道如何解决这个问题?

谢谢

艾蒂安

Pab*_*blo 23

我有一个类似的问题,因为我不需要在我的情况下使用历史记录,我解决了它禁用全局弹出历史记录,如下所示:

$.mobile.popup.prototype.options.history = false;
Run Code Online (Sandbox Code Playgroud)


JA_*_*251 5

在使用jQuery Mobile 1.4.5的IE11上遇到类似问题时发现了这篇文章

我发现通过在HTML中声明带有data-history ="false"属性的弹出窗口来关闭弹出窗口时,我可以阻止"重新加载".

例如:

...


nul*_*ble 3

根据我的评论,这是该问题的临时解决方法。只需适当地绑定到导航事件并调用preventDefault即可。这将阻止重新加载页面。我最终绑定到 popupafterclose,仅当它被打开时:

  $('.my-popup-selector').on('popupafteropen', function () {
      $(this).one('popupafterclose', function () {
          $(window).one('navigate.popup', function (e) {
              e.preventDefault();
          });
      });
  });
Run Code Online (Sandbox Code Playgroud)