web 本地存储 localStorage 关闭浏览器保留背景颜色案例

Effect:

Demo:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>储存背景颜色到本地</title>
    <style>
        .pink {
            background-color: pink;
        }
        .skyblue {
            background-color: skyblue;
        }
    </style>
</head>
<body>
    <button class="btn1">按钮1</button>
    <button class="btn2">按钮2</button>
</body>
</html>
<script>
    //1.0 原生js,获取按钮
    var btn1 = document.querySelector('.btn1');
    var btn2 = document.querySelector('.btn2');

    //3.0获取本地仓库中localColor的值,没有就不作改变
    var getLocalColor = window.localStorage.getItem("localColor")
    if(getLocalColor){
        document.body.className = getLocalColor;
    }else{

    }

    //2.0 当用户点击第一个按钮
    btn1.onclick = function(){
        //body添加pink类名,背景就会变粉色
        document.body.className = "pink";
        //把粉色存储到本地仓库
        window.localStorage.setItem('localColor','pink');
    }

    //2.1 当用户点击第二个按钮    
    btn2.onclick = function(){
        //body添加pink类名,背景就会变天蓝色 
        document.body.className = "skyblue";
        //把蓝色存储到本地仓库
        window.localStorage.setItem('localColor','skyblue');
    } 
</script>

代码的步骤3.0和2.0可以调换,按照程序执行顺序先3.0再2.0比较合理;

但是敲代码的思路是从2.0到3.0的,望周知;


web 本地存储 (localStorage、sessionStorage)

区别:

对浏览器来说,使用 Web Storage 存储键值对比存储 Cookie 方式更直观,而且容量更大,它包含两种:localStorage 和 sessionStorage

  1. sessionStorage(临时存储) :为每一个数据源维持一个存储区域,在浏览器打开期间存在,包括页面重新加载

  2. localStorage(长期存储) :与 sessionStorage 一样,但是浏览器关闭后,数据依然会一直存在

Api:

sessionStorage 和 localStorage 的用法基本一致,引用类型的值要转换成JSON

详细讲解看mj的博客>>>点击打开链接

猜你喜欢

转载自blog.csdn.net/qq_40259641/article/details/80459381