Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 本地存储和IE无法使其工作_Javascript_Jquery_Cookies_Local Storage - Fatal编程技术网

Javascript 本地存储和IE无法使其工作

Javascript 本地存储和IE无法使其工作,javascript,jquery,cookies,local-storage,Javascript,Jquery,Cookies,Local Storage,我试图在使用localStorage刷新时保持复选框处于选中状态。除了IE11和更低版本之外,所有现代浏览器都能完成这项工作 小提琴: 有人知道有没有办法让它适应IE吗?或者您知道一个脚本,它在所有浏览器中刷新时保持复选框处于选中状态?不管它是在javascript还是jquery中。非常感谢您的帮助。当我需要本地存储时,我会使用jstorage。它有一些附加功能,如TTL生存时间 要保持复选框处于选中状态,选中属性将有所帮助..我知道这一点。这和我想问的有什么关系?LocalStorage在I

我试图在使用localStorage刷新时保持复选框处于选中状态。除了IE11和更低版本之外,所有现代浏览器都能完成这项工作

小提琴:


有人知道有没有办法让它适应IE吗?或者您知道一个脚本,它在所有浏览器中刷新时保持复选框处于选中状态?不管它是在javascript还是jquery中。非常感谢您的帮助。

当我需要本地存储时,我会使用jstorage。它有一些附加功能,如TTL生存时间


要保持复选框处于选中状态,选中属性将有所帮助..我知道这一点。这和我想问的有什么关系?LocalStorage在IE8+中应该可以正常工作。检查一下,它可能有你想要的东西。我刚刚在Windows8.1上运行了你的小提琴,即11.0.9600.17498,它工作正常。也许你的IE版本已经过时,或者你的安全设置不允许使用LocalStorage@qwikad,一开始我弄错了。如果您担心较低版本的if,则可以通过本地存储使用cookie。
(function() {
var boxes = document.querySelectorAll("input[type='checkbox']");
for (var i = 0; i < boxes.length; i++) {
    var box = boxes[i];
    if (box.hasAttribute("store")) {
        setupBox(box);
    }
}

function setupBox(box) {
    var storageId = box.getAttribute("store");
    var oldVal    = localStorage.getItem(storageId);
    console.log(oldVal);
    box.checked = oldVal === "true" ? true : false;

    box.addEventListener("change", function() {
        localStorage.setItem(storageId, this.checked); 
    });
}
})();