加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

hashchange实现ajax无刷新回退

发布时间:2020-12-15 20:56:56 所属栏目:百科 来源:网络整理
导读:hashchange,一提hash前端GG、MM们都不稀奇,但是hashchange就鲜有人知了 在一次面试过程中面试官问道这么样实现ajax回退,这个问题当时闷了,下面附上具体代码,以备后用: div id="nihao"/div buttonchange/button var i=0,url; var show = function(num)

hashchange,一提hash前端GG、MM们都不稀奇,但是hashchange就鲜有人知了

在一次面试过程中面试官问道这么样实现ajax回退,这个问题当时闷了,下面附上具体代码,以备后用:

    <div id="nihao"></div>
    <button>change</button>

var i=0,url;
    
    var show = function(num) {
        if (num == 0) {
            url = "data/data_1.json";
        } else if (num == 1) {
            url = "data/data_2.json";
        }
        $.get(url,{"cache":false},function(result) {
            $("#nihao").text(result.code);
        },"json");
    };
    
    if(window.attachEvent) {
        window.attachEvent("onhashchange",function(e) {
            var hash = parseInt(window.location.hash.substring(1,2),10);
            show(hash);
        });
    } else if(window.addEventListener) {
        window.addEventListener("hashchange",10);
            show(hash);
        },false);
    }
    
    $("button").click(function() {
        
        if(i == 1) {
            window.location.hash = i--;
        } else if(i == 0) {
            window.location.hash = i++;
        }
    });

支持ie8+、chrome、firefox

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读