使用history.js在iframe中的后退按钮

我在RoR做一个项目。 该项目位于iFrame中。 在那个iframe有前进和后退按钮。 当我单击向后按钮时,iframe内容应该返回但不是整个浏览器页面。 我正在使用“ histroy.js ”插件。 但我不知道如何使用它。

我的代码是这样的:

$('#back-btn').on('click', function () { History.back(); }); $('#forward-btn').on('click', function () { History.forward(); }); $("a").click(function () { n = 1; q = n++; var s = $(this).attr("href"); var o = 'History.pushState({state:' + q + ',rand:Math.random()}, "State 1", \"' + s + '\");' $("#z").empty().append(''); $("#z button").click(); //this is for checking log (function (window, undefined) { var History = window.History, // Note: We are using a capital H instead of a lower h State = History.getState(), $log = $('#log'); // Log Initial State History.log('initial:', State.data, State.title, State.url); // Bind to State Change History.Adapter.bind(window, 'statechange', function () { // Note: We are using statechange instead of popstate // Log the State var State = History.getState(); // Note: We are using History.getState() instead of event.state History.log('statechange:', State.data, State.title, State.url); }); })(window); }) 

注意:有时我使用ajax调用。

感谢您的支持。

你可能想使用window.history对象

 iframe.contentWindow.history.go(-1); // back iframe.contentWindow.history.go(1); // forward 

所以你的后退按钮可以修改为\

 $('#back-btn').on('click', function () { iframe.contentWindow.history.go(-1); or iframe.contentWindow.history.back(); }); 

并且您的前进按钮可以修改为

 $('#forward-btn').on('click', function () { iframe.contentWindow.history.forward(); or iframe.contentWindow.history.go(1); }); 

干杯!