我正在尝试编写一个检查localstorage长度的简单函数,如果它是0,未定义或为null,我希望用户看到弹出消息,因为这意味着他们是第一次访问者,或者向他们展示一个按钮,以便在他们之前来到时触发消息。
但是我甚至无法让浏览器告诉我传递给localstorage的值是什么。
这是我的代码:
function local() {
var storageLocal = window.localStorage.length;
if (storageLocal !== 0 && storageLocal === undefined && storageLocal === null ){
document.getElementById('message').style.cssText = 'display: block';
}
else {
document.getElementById('button').style.cssText = 'display: block';
}
}
这是我的css:
#message, #button {display: none;}
HTML:
<div id="message">MESSAGE</div>
<div id="button">BUTTON</div>
如果有更简单的方法,请告诉我。我正在实施CMS程序,因此不能使用&#34;追加到&#34; jquery的。
答案 0 :(得分:0)
根据我的理解,我发现你的病情有问题。
window.localStorage.length
会返回一个数字。因此,您应该只检查号码。此外,您希望在长度为0的情况下显示消息,因此,您需要检查是否相等。
因此,您需要更新您的条件
这
if (storageLocal !== 0 && storageLocal === undefined && storageLocal === null ){
到
if (storageLocal === 0){