无论如何要完全防止popstate?

时间:2013-07-01 22:08:59

标签: javascript jquery jquery-mobile

我正在使用jquery mobile。当用户点击该框时,它将显示另一个框。但是当用户强制返回浏览器(或后退按钮)时,在那一刻,第二个框应该隐藏,而不是返回到prev页面。

我设法用popstate达到了我想要的效果:

window.onpopstate = function(event) {
  if($('div').is(':visible') {
     closeFunction();
     event.stopImmediatePropagation();
  }
}

但它仍会更改网址。

例如,如果我有这样的导航:

index > home > internal(with box)

然后按下后退按钮

index > home

仍会触发网址更改,但不会更改网页。

我尝试过使用pagebeforechange,但结果相同。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

popstate事件不可取消。 提到doc

  

规格:HTML5
  接口:PopStateEvent
  气泡:是的   可取消:否   目标:defaultView
  默认操作:无