Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery history.js:如何管理后退按钮_Jquery_Html_Back_History.js - Fatal编程技术网

Jquery history.js:如何管理后退按钮

Jquery history.js:如何管理后退按钮,jquery,html,back,history.js,Jquery,Html,Back,History.js,在HTML5HistoryAPI中,我尝试使用history.js实现ajax导航,使用jquery将html内容附加到容器div中 它可以更改页面,但当我在浏览器中按下后退按钮时,它只更改地址栏中的usr,但页面保持不变 /* SETUP HISTORY JS */ var History = window.History; var State = History.getState(); // Log Initial State //History.log('initial:', State

在HTML5HistoryAPI中,我尝试使用history.js实现ajax导航,使用jquery将html内容附加到容器div中

它可以更改页面,但当我在浏览器中按下后退按钮时,它只更改地址栏中的usr,但页面保持不变

/* SETUP HISTORY JS */
var History = window.History;
var State = History.getState();

// Log Initial State
//History.log('initial:', State.data, State.title, State.url);

// Bind to State Change
History.Adapter.bind(window,'statechange',function(){
    var State = History.getState();
});
/* END SETUP HISTORY JS */
单击我定义的链接(link_title_uhref)和文件的ajaxurl,以便在ajax中获取其内容并更新历史记录:

// CHANGING THE PAGES
$.get(''+ajax_url,function(data) {
    $('#container').append(''+data); //LOAD THE PAGE
    History.pushState({state:''+link_href,rand:Math.random()}, link_title, link_href);
}

我想用旧的html值刷新#容器内容,是否需要获取状态并执行另一个get()调用?

也许可以尝试将ajax调用绑定到状态更改

History.Adapter.bind(window,'statechange',function(){
var State = History.getState();
//Do ajax call here...
});
这将保留内容,以便在向前或向后导航时,容器将具有旧值