zoukankan      html  css  js  c++  java
  • history-back

    ;!function(pkg, undefined){ //此声明函数在xback.js文件里有,在app.js里必须再声明一次,不然监听返回事件失败
    var STATE = 'x-back';
    var element;

    var onPopState = function(event){
        event.state === STATE && fire();
        record(STATE);  //初始化事件时,push一下
    }
    
    var record = function(state){
        history.pushState(state, null, location.href);
    }
    
    var fire = function(){
        var event = document.createEvent('Events');
        event.initEvent(STATE, false, false);
        element.dispatchEvent(event);
    }
    
    var listen = function(listener){
        element.addEventListener(STATE, listener, false);
    }
    
    !function(){
        element = document.createElement('span');
        window.addEventListener('popstate', onPopState);
        this.listen = listen;
        //record(STATE);  //注释掉这行代码
    }.call(window[pkg] = window[pkg] || {});
    

    }('XBack');

    var STATE = "x-back"
    history.pushState(STATE, null, location.href);
    window.onpopstate = function(event) {
    if(event.state === STATE) {
    if (opt.callback && typeof opt.callback == 'function') {
    opt.callback();
    }
    }
    };
  • 相关阅读:
    php常见细节错误
    php+jquery注册实例
    yii2添加自定义字段
    yii2开启session
    yii2中textarea中的默认值设置
    yii2.0分页
    yii2多语言
    mysql中查询值为NULL的记录
    yii Html中的a标签使用
    yii2顶部导航使用
  • 原文地址:https://www.cnblogs.com/b0xiaoli/p/5046416.html
Copyright © 2011-2022 走看看