【发布时间】:2016-06-25 13:09:15
【问题描述】:
嘿,我有一个 HTML 页面,其中包含更新本地存储的这部分 javascript:
<script src="../../Website/json/modernizr.js" >
var button = document.getElementById("btnsave");
button.addEventListener("click", function(){
if (Modernizr.localstorage) {
// window.localStorage is available!
var drinksElement = document.getElementById("drinks");
for (var i = 0; i < drinksElement.length-1; i++) {
localStorage["box" + i] = drinksElement[i].value;
}
} else {
// no native support for HTML5 storage :(
}
});
</script>
但由于某种原因,它没有做它应该做的事情。该页面加载正常,在控制台上没有出现任何错误。如果我将此脚本复制并粘贴到开发人员控制台中,然后单击按钮更新本地存储,本地存储会更新,但只有一次,然后似乎“忘记”了这个javascript函数。如果我将其复制并粘贴到控制台中,然后键入“按钮”,它将显示按钮变量。我可以继续输入“按钮”,它会一直显示按钮变量,直到我单击按钮并更新本地存储。之后,再次调用按钮返回引用未定义错误。
在此先感谢,这让我困扰了很长时间。
【问题讨论】:
-
粘贴返回的确切错误。
-
这是返回的错误:VM120:1 Uncaught ReferenceError: button is not defined at
:1:1 如果我将脚本复制并粘贴到控制台中,我不会收到此错误虽然
标签: javascript html google-chrome