Хранить значения с помощью localStorage
Мне нужно немного помощи здесь. На этой странице я хочу создать собственные теги ссылок с изображением. Когда вы нажимаете на свое изображение, вы переходите на ту страницу, которую вы выбрали. Я думаю, что я почти закончил, но это не работает! Что я сделал не так?! Когда я щелкаю элемент img, чтобы открыть новую страницу, изображение всплывает..
<head>
<meta charset="utf-8">
<title>Min Startsida</title>
<script type="text/javascript">
function newLink() {
var myNewLink = document.getElementById("link");
localStorage.setItem(link, myNewLink.value)
};
function newIcon() {
var myNewIcon = document.getElementById("icon");
localStorage.setItem(icon, myNewIcon.value)
};
function varIcon() {
document.getElementById("image").src = localStorage.getItem(icon)
};
</script>
</head>
<body>
<form>
<h1>lägg till länk</h1><br />
<input type="text" id="link"><br />
<input type="text" id="icon"><br />
<button onClick="newLink(), newIcon()">lägg till länk</button>
</form>
<section>
<a href="#" onClick="location.href = localStorage.getItem(link)"><img src="#" id="image" onLoad="varIcon()"></a>
</section>
</body>
1 ответ
Решение
Это должна быть строка:
localStorage.setItem("link", myNewLink.value)
^^^^
здесь происходит то, что элемент используется в качестве ключа, а ссылка используется в качестве идентификатора - ключ должен быть строкой. Это касается как setItem
методы и getItem
а также то, что вы используете позже:
<a href="#" onClick="location.href = localStorage.getItem('link')">
Алос, это должно быть разделено полуколонкой:
<button onClick="newLink(); newIcon()">
^
(Я не смотрел дальше, чем эти пункты)