我正在使用History.js和Eric Martin's SimpleModal。我有以下代码:
jQuery(function() {
var History = window.History;
History.Adapter.bind(window,'statechange',function(){
var State = History.getState();
History.log(State.data, State.title, State.url);
});
('body').delegate('a', 'click', function () {
$.modal("<div><h1>Test</h1></div>", {
close: true,
opacity: 70,
onShow: function (){
History.pushState({state:1}, "State 1", "?state=1");
},
onClose: function (){
History.back();
$.modal.close();
}
});
});
});
现在,如果您点击链接并显示模态,它会改变状态。如果你关闭模态,它也可以正常工作。
唯一不起作用的是,如果你打开模态,然后使用浏览器的后退按钮,它会改变状态,但模态不会关闭。如果SimpleModal打开并单击后退按钮,我如何才能关闭它?
答案 0 :(得分:1)
试试这个:
$(window).bind("beforeunload", function() {
$.modal.close();
});
或者使用“window.onstatechange”History.js事件。