有谁知道如何在本地存储由javascript函数进行的css更改?

时间:2013-12-14 22:44:15

标签: javascript jquery css html5 local-storage

我一直在摸不着头脑,我无法弄清楚如何在本地存储(HTML5本地存储)如何改变由javascript函数创建的某个div的样式。我有一个按钮,允许用户通过更改css(内联)来更改容器的背景颜色。有谁知道存储这种变化的方法?

3 个答案:

答案 0 :(得分:2)

Demo

JS(在loadDOMContentLoaded运行):

var bgColor = document.getElementById('bgcolor');
bgColor.onchange = function() {
    document.body.style.backgroundColor = this.value;
    localStorage.setItem('bgColor', this.value);
};
bgColor.value = localStorage.getItem('bgColor');
bgColor.onchange();

HTML:

<input id="bgcolor" />

或者,如果你使用jQuery,

$('#bgcolor')
    .val(localStorage.getItem('bgColor'))
    .change(function() {
        $('body').css({'background-color': this.value});
        localStorage.setItem('bgColor', this.value);
    })
    .change();

Demo

答案 1 :(得分:2)

所以你有一个像:

这样的功能
function changeDivBackground(div, bg) {
    /* ...change the background... */
}

有两个步骤:

  1. 记住价值:

    function changeDivBackground(div, bg) {
        /* ...change the background... */
    
        localStorage["theDivBackground"] = bg;
    }
    
  2. 在页面末尾的script标记中,查看您是否有值并使用它:

    var bg = localStorage["theDivBackground"];
    if (bg) {
        changeDivBackground(/*...get the div...*/, bg);
    }
    
  3. script标记位于#2页面的 end ,因此div在运行时就会存在。

答案 2 :(得分:-1)

将值存储到本地存储。然后编写一个JavaScript函数来检索该值并应用它。