微信瀏覽器內禁止頁面回退返回

罪後憶支湮發表於2019-03-30

<script type="text/javascript">

    //禁止瀏覽器回退/返回
    XBack = {};
    (function (XBack) {
        XBack.STATE = 'x - back';
        XBack.element;
        XBack.onPopState = function (event) {
            event.state === XBack.STATE && XBack.fire();
            XBack.record(XBack.STATE); //初始化事件時,push一下
        };
        XBack.record = function (state) {
            history.pushState(state, null, location.href);
        };
        XBack.fire = function () {
            var event = document.createEvent('Events');
            event.initEvent(XBack.STATE, false, false);
            XBack.element.dispatchEvent(event);
        };
        XBack.listen = function (listener) {
            XBack.element.addEventListener(XBack.STATE, listener, false);
        };
        XBack.init = function () {
            XBack.element = document.createElement('span');
            window.addEventListener('popstate', XBack.onPopState);
            XBack.record(XBack.STATE);
        };
    })(XBack); // 引入這段js檔案
    XBack.init();
    XBack.listen(function () { });

</script>

相關文章