在一个html页面中有两组a标签一个a标签代表一种选择如何默认每组第一个a标签为黄色每一组点击后的一个a标签变成黄色并且可以记住在用户刷新后还是黄色?
你可以使用JavaScript来实现这个功能。首先,在HTML中给每个a标签添加一个唯一的id,然后使用localStorage来保存用户的选择。
HTML代码:
<div id="group1">
<a id="a1" href="#" onclick="changeColor('a1')">选择1</a>
<a id="a2" href="#" onclick="changeColor('a2')">选择2</a>
</div>
<div id="group2">
<a id="a3" href="#" onclick="changeColor('a3')">选择3</a>
<a id="a4" href="#" onclick="changeColor('a4')">选择4</a>
</div>
JavaScript代码:
// 检查localStorage中是否已保存选择
if(localStorage.getItem('selected')){
var selected = JSON.parse(localStorage.getItem('selected'));
changeColor(selected);
} else {
changeColor('a1');
}
function changeColor(id){
// 移除之前的选择
var prevSelected = document.getElementsByClassName('selected');
for(var i=0; i<prevSelected.length; i++){
prevSelected[i].classList.remove('selected');
}
// 添加新的选择
var selectedElement = document.getElementById(id);
selectedElement.classList.add('selected');
// 保存选择到localStorage
localStorage.setItem('selected', JSON.stringify(id));
}
CSS代码:
.selected {
color: yellow;
}
这样,当用户点击a标签时,会调用changeColor函数,该函数会将之前的选择取消,并将新选择标记为黄色,并且保存到localStorage中。在页面加载时,会检查localStorage中是否有保存的选择,如果有则恢复之前的选择,否则默认选择第一个a标签
原文地址: http://www.cveoy.top/t/topic/hUai 著作权归作者所有。请勿转载和采集!