使用JavaScript刷新页面后记住活动类的位置
我正在使用来实现一个基于选项卡的内容转盘。下面的示例使用。这允许用户访问特定选项卡,例如example.com/#slide-1 我遇到的唯一问题是,当用户导航到另一个页面并返回或刷新该页面时,选择了使用JavaScript刷新页面后记住活动类的位置,javascript,html,css,flickity,Javascript,Html,Css,Flickity,我正在使用来实现一个基于选项卡的内容转盘。下面的示例使用。这允许用户访问特定选项卡,例如example.com/#slide-1 我遇到的唯一问题是,当用户导航到另一个页面并返回或刷新该页面时,选择了类会在选项卡导航上重置自身。这意味着它与加载的内容不匹配 javascript中是否有一种方法可以让浏览器记住用户刷新或返回时最后选择的位置 。幻灯片内容{ 宽度:100%; } .选项卡导航a, .选项卡导航a:已访问, .选项卡导航a:焦点, .选项卡导航a:悬停{ 显示:内联块; 颜色:#0
类会在选项卡导航上重置自身。这意味着它与加载的内容不匹配
javascript中是否有一种方法可以让浏览器记住用户刷新或返回时最后选择的位置
。幻灯片内容{
宽度:100%;
}
.选项卡导航a,
.选项卡导航a:已访问,
.选项卡导航a:焦点,
.选项卡导航a:悬停{
显示:内联块;
颜色:#000;
文字装饰:无;
填充:24px;
边框:1px实心#dedede;
}
.选项卡导航被选中{
背景:#dedede;
}
我是幻灯片一
我是幻灯片二
我是幻灯片三
我是幻灯片四
我是幻灯片五
var utils=window.fizzyutils;
var carousel=document.querySelector('.carousel');
var flkty=新的Flickity(旋转木马{
prevNextButtons:false,
pageDots:false,
哈希:对
});
//元素
var cellsButtonGroup=document.querySelector('.tab nav');
var cellsButtons=utils.makeArray(cellsButtonGroup.children);
//选择上的更新按钮
flkty.on('select',function(){
var previousSelectedButton=cellsButtonGroup.querySelector(“.is selected”);
var selectedButton=cellsButtonGroup.children[flkty.selectedIndex];
previousSelectedButton.classList.remove('is-selected');
selectedButton.classList.add('is-selected');
});
//单元格选择
cellsButtonGroup.addEventListener('click',函数(事件){
如果(!matchesSelector(event.target,'.slide')){
返回;
}
var指数=cellsButtons.indexOf(event.target);
flkty.select(索引);
});
单击选项卡时,可以使用localStorage保存选择器。在页面加载时,您可以检查localStorage中最后一个选择的选项卡,并将其设置为活动。如果用户正在刷新页面,它肯定会对您起作用。
对于处理回有没有这样的成功的方法,你可以依靠。您可以通过向页面添加缓存控制:无缓存、无存储、必须重新验证标题来关闭浏览器中的页面缓存。如果用户返回,页面将重新加载。我也不知道Flickity和哈希脚本,但您可以将最后选择的保存到localStorage,然后在页面加载时尝试使用它…请使用javascript在客户端定义本地存储?localStorage是一种客户端排序,您可以在其中以键值对保存数据。请检查此MDN文档。你应该把这些都写进你的答案里。我不建议使用这个,但我想旋转木马的位置是可以的。