首先,我想说我很抱歉没有使用Code示例。这是我第一次询问stackoverflow,我发现它真的很混乱。
我有这个完美的javascript代码,但是当我尝试复制它并更改变量名称时,它似乎无法正常工作。
JavaScript
function saveEdits() {
var editElem = document.getElementById("edit");
var userVersion = editElem.innerHTML;
localStorage.userEdits = userVersion;
document.getElementById("update").innerHTML="Edits saved!";
}
function checkEdits() {
if(localStorage.userEdits!=null)
document.getElementById("edit").innerHTML=localStorage.userEdits;
}
我试图编辑的方式(我刚接触到javascript我不知道我在做什么): JavaScript
<script type="text/javascript">
function saveEditsplus() {
var editElemplus = document.getElementById("editplus");
var userVersionplus = editElemplus.innerHTML;
localStorageplus.userEditsplus = userVersionhtml;
}
function checkEditsplus() {
if(localStorage.userEditsplus!=null)
document.getElementById("editplus").innerHTML=localStorageplus.userEditplus;
}
</script>
答案 0 :(得分:0)
在您的代码中,您将localStorage
的名称更改为localStoragePlus
- 但localStorage是您的浏览器提供的内容(请参阅。
如果您将其更改回localStorage
,则可能会再次发挥作用。
供参考,这是包含重命名变量的部分:
function saveEditsplus() {
var editElemplus = document.getElementById("editplus");
var userVersionplus = editElemplus.innerHTML;
localStorageplus.userEditsplus = userVersionhtml;
^^^^
}
顺便说一下,你没有正确使用localStorage。如果你想在页面重新加载中保存一些东西,你需要调用“set”我知道这不是真的。对困惑感到抱歉。 (tutorial)
答案 1 :(得分:0)
是的,看起来你不知道代码在做什么...... localStorage
是一个浏览器API,你不能只重命名它(就像你可以 - 并且没有&#39; t - 更改document
或innerHTML
)。
但是,根本没有理由重命名任何变量。通过使用var
declarations,您可以将它们作为每个函数的本地函数,因此它们无论如何都不会相互干扰。您需要更改的是对元素的引用:
function saveEditsplus() {
var editElem = document.getElementById("editplus");
var userVersion = editElem.innerHTML;
localStorage.userEditsplus = userVersion; // no …html suffix, either
// ^^^^^^^^^^^^^ the storage reference is global, though
}
function checkEditsplus() {
if(localStorage.userEditsplus!=null)
document.getElementById("editplus").innerHTML=localStorage.userEditplus;
}
然而,比复制代码更好的是提供这些functions参数 - 一个用于元素的id,一个用于localStorage
的{{1}}应该是使用。
答案 2 :(得分:-1)
您无法修改localStorage(浏览器API)!
function saveEdits() {
var editElem = document.getElementById("edit");
var userVersion = editElem.innerHTML;
localStorage.userEdits = userVersion;
document.getElementById("update").innerHTML="Edits saved!";
}
function checkEdits() {
if(localStorage.userEdits!=null)
document.getElementById("edit").innerHTML = localStorage.userEdits;
}