Javascript后退按钮-停止后退按钮的初始加载

Javascript后退按钮-停止后退按钮的初始加载,javascript,button,back,Javascript,Button,Back,我正在使用javascript后退按钮链接和前进按钮链接在模态/lightbox窗口中控制用户的历史记录 我面临的挑战是当模式窗口启动时,“后退”和“前进”按钮供用户单击,如果在窗口打开时单击初始javascript后退按钮,它实际上会关闭模式窗口,因为javascript历史记录将用户带回打开模式窗口之前的页面 因此,本质上,我试图禁用“后退”按钮,使其无法在模态/灯箱的初始负载上工作 这可能吗?下面是正在发生的事情的演示。。。 我不确定我是否理解您在使用模态窗口时所做的工作,但我想到的第一

我正在使用javascript后退按钮链接和前进按钮链接在模态/lightbox窗口中控制用户的历史记录

我面临的挑战是当模式窗口启动时,“后退”和“前进”按钮供用户单击,如果在窗口打开时单击初始javascript后退按钮,它实际上会关闭模式窗口,因为javascript历史记录将用户带回打开模式窗口之前的页面

因此,本质上,我试图禁用“后退”按钮,使其无法在模态/灯箱的初始负载上工作

这可能吗?下面是正在发生的事情的演示。。。


我不确定我是否理解您在使用模态窗口时所做的工作,但我想到的第一件事是编写一个函数,并将历史记录包装起来。在条件窗口中执行(-1)

function goBackIfAppropriate() {
  if( /* <check goes here> */ ) {
    history.go(-1);
  }
}
或者(使用jQuery;)


或者用它做任何你喜欢的事情。

试试
history.pushState(null,,'#stay')


*据我所知,这需要支持HTML5的浏览器。

flitzwald-我创建了一个演示链接,向您展示正在发生的事情。
function goBackIfAppropriate() {
  if( /* <check goes here> */ ) {
    history.go(-1);
  }
}
<a href="javascript:goBackIfAppropriate()">Back Button</a> 
<a href="javascript:history.go(-1)" id='back_button'>Back</a>
var iframe = document.getElementsByTagName("iframe")[0];
var link =  iframe.contentDocument.getElementById("back_button");
link.parentNode.removeChild(link);
$("iframe").contents().find("#back_button").remove();