Chrome加载前事件和历史记录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窗口.history.state,以确保在历史记录中后退/前进时页面大小。
我在IE10+、FireFox和Opera中得到了预期的值,但chrome似乎将页面中的值记录在历史+1中。
你不应该如此努力地破解,并破坏标题
Javascript提供了一组很好的方法来处理prev/next,同时实际上保持在同一页面上:
即location.hash(片段标识符)
请使用它们:www.anything/index#125615,其中x,y是您的值
相关文章:
- window.location替换并传递URL历史记录条目中的变量
- Javascript历史记录转换为php行
- 浏览器何时记录历史记录
- 输入类型按钮返回历史记录并返回顶部
- HTML5历史记录-返回上一个完整页面按钮
- asp.net网站文件下载历史记录
- 使用Ajax的后退按钮历史记录,URL中没有散列
- 历史记录和通过JavaScript修改的HTML
- Javascript:历史记录未加载页面
- 通过js设置页面历史记录和页面内容
- 如果没有历史记录,我如何隐藏图像或按钮onclick=;历史.go(-1);
- 将HTML表单发布到iframe会导致浏览器历史记录出现问题
- 如何防止浏览器在历史记录中缓存HTML
- 如何将新的stateObject添加或附加到历史记录中
- 检查浏览器后退按钮历史记录
- React-router 在添加历史记录后不会渲染组件
- 如何返回可用的历史记录状态数
- 引导选项卡不适用于历史记录.返回选项
- 记录 iframe 的历史记录
- 计算历史记录中的页数