0
我有一個長頁面,通過scrollTop()
導航。當popstate被觸發時刷新一次頁面?
因爲scrollTop()不能正確地與瀏覽器的後退按鈕一起工作(瀏覽器忽略它),所以我想在每個popstate上嘗試刷新瀏覽器,然後它將起作用,並且用戶滾動位置將是其假定位置成爲。
問題是我的代碼導致無限刷新。
$(window).bind('popstate', function(event) {
//var path = window.location.pathname;
//var filename = path.match(/.*\/([^/]+)\.([^?]+)/i)[1];
//var pos = "#" + filename;
//$(document).scrollTop(pos);
location.reload();
});
我該如何修復它只刷新一次?我試過one()
,但它是一樣的。
我使用歷史API,問題是出在滾動,而不是一般的歷史執行情況。瀏覽器在向後/向前導航時控制滾動位置。阿賈克斯的東西,我也有工作得很好。 – user1721135 2013-05-12 10:05:33
如果我能讓瀏覽器在popstate上只刷新一次,它會起作用。所有的插件都不工作,因爲滾動,如果它只是ajax,那麼是的,他們會工作。 – user1721135 2013-05-12 10:25:33