javascript - 保持水平滚动位置页面到页面
问题描述
我的网站上有一个水平滚动div
菜单。
我的问题是,当单击一个菜单项并且用户进入包含菜单的下一页时,它不记得水平滚动位置。重要的是显示活动菜单项,而无需用户滚动以再次找到它。
我想div
在所有页面上定位,以便它记住菜单栏中的水平滚动位置。我做了很多 JavaScript 调查,但没有找到类似的解决方案。其他论坛用户指出使用 cookie 是必要的。也许我只是不知道如何表达我的关键字?任何帮助将不胜感激!
我找到了下面的代码,我不认为写这个:
document.addEventListener('DOMContentLoaded', function() {
var sep = '\uE000'; // an unusual char: unicode 'Private Use, First'
window.addEventListener('pagehide', function(e) {
window.name += sep + window.pageXOffset + sep + window.pageYOffset;
});
if (window.name && window.name.indexOf(sep) > -1) {
var parts = window.name.split(sep);
if (parts.length >= 3) {
window.name = parts[0];
window.scrollTo(parseFloat(parts[parts.length - 2]), parseFloat(parts[parts.length - 1]));
}
}
});
它记住从一页到另一页的垂直页面位置。但是,我想针对特定的 div 或元素来记住水平滚动。
解决方案
推荐阅读
- typescript - TypeScript 抱怨 rc-tree Tree 没有 treeData 道具
- scala - 如何同时运行测试scalatest和junit?
- swiftui - 为什么我的 SwiftUI 应用程序中没有更新 ObservedObject 数组?
- python - 获取激活前层相对于输入图片的梯度
- java - 如何在带有 BrowserStack 的 Selenium 测试中使用 Chrome 扩展程序?
- grails - 检测请求是否是来自另一个控制器操作的“forward()”的正确方法是什么?
- java - How to update a JavaFX GUI correctly while processing data
- pyspark - Appending column name to column value using Spark
- algorithm - time complexity (with respect of n input)
- cakephp - ALTERing a database table inside a test