簡體   English   中英

Chrome beforeunload事件和歷史記錄API

[英]Chrome beforeunload Event and history API

因此,我有代碼來存儲帶有抽屜菜單的響應頁面的滾動位置和高度。

$(window).on('beforeunload', function (e) {
                if (window.history && window.history.replaceState) {
                    var $formContainer = $('#Form1'),
                        $drawerContent = $('#drawer-content'),
                        pageState = {
                            page: window.location.href,
                            formContainerHeight: $formContainer.height(),
                            drawerContentScrollTop: $drawerContent.scrollTop()
                        };
                    console.log(pageState, e.type)
                    window.history.replaceState(pageState, window.document.title);
                }
            });

在頁面加載時,我用console.log記錄window.history.state以確保在歷史記錄中前進/后退時的頁面大小。

我在IE10 +,FireFox和Opera中獲得了預期的值,但是Chrome似乎在歷史記錄+1中記錄了該頁面的值。

您不應該這么刻苦,弄亂標題
Javascript提供了一組不錯的方法來處理上一個/下一個,而實際上卻停留在同一頁面上:
即location.hash( 片段標識符 )。
改用它們:www.whatever / index#125,615其中x,y是您的值

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM