如何使用浏览器的后退按钮关闭引导模式,而不是返回页面?

ste*_*0nz 2 jquery jquery-ui modal-dialog twitter-bootstrap

我发现此问题与智能手机有关,并且可能与台式机有关。我们已经“修改”了引导模式以进行响应,但是当在智能手机上以全屏显示时,用户会认为该模式是页面,然后单击以“关闭”它。我们已经在右上方的X中添加了,但是还希望使用后退按钮来关闭模式。有人有想法么?

谢谢

Ray*_*vie 6

我发现了一个更好的方法,这要感谢http://www.mylearning.in/2015/06/close-modal-pop-up-on-back-button.html

    $('#myModal').on('show.bs.modal', function(e) {
        window.location.hash = "modal";
    });

    $(window).on('hashchange', function (event) {
        if(window.location.hash != "#modal") {
            $('#myModal').modal('hide');
        }
    });
Run Code Online (Sandbox Code Playgroud)


Gau*_*dhi 3

最简单的方法是让用户感觉它的弹出窗口或模型不是一个新页面,通过使用一些边距或使其跨度10偏移1种。

另一种方法是打开和关闭方法,如下所述

最好的方法是

<SCRIPT type="text/javascript">
   window.history.forward();
   function noBack() { window.history.forward(); }
</SCRIPT>
</HEAD>
<BODY onload="noBack();"onpageshow="if (event.persisted) noBack();" onunload="">
Run Code Online (Sandbox Code Playgroud)

此处描述

要从 iFrame 控制后退按钮,尝试这可能会有所帮助(未测试)

<SCRIPT type="text/javascript">
   window.parent.history.forward();
   function noBack() { window.parent.forward(); }
</SCRIPT>
</HEAD>
Run Code Online (Sandbox Code Playgroud)