Даже не знаю как правильно истолковать вопрос.
В общем, есть допустим 2 файла html. К ним подключен один и тот же файл js.
Вот файл html1:
<form action="#">
<input type="text" class="key" placeholder="key">
<input type="text" class="item" placeholder="item">
<div class="add">Add</div>
</form>
Вот файл html2:
<ul class="list"></ul>
Вот файл JS:
var field1 = document.querySelector(".key");
var field2 = document.querySelector(".item");
document.querySelector(".add").addEventListener("click", function(event) {
localStorage[field1.value] = field2.value;
}, false);
window.onload = function() {
window.addEventListener("storage", storageChanged, false);
}
function storageChanged(event) {
var list = document.querySelector(".list");
list.innerHTML = "";
for (var i = 0; i < localStorage.length; i += 1) {
var key = localStorage.key(i),
item = localStorage[key],
li = document.createElement("li");
li.innerHTML = key + ": " + item;
list.appendChild(li);
}
}
Конкретно в этом примере хочу через форму добавлять данные в localStorage. И чтобы при событии storage, на другой странице выводился список всех данных в хранилище.
И, либо у меня уже с головой что то не так и пора отдохнуть, либо что то пошло не так.
Что то я сейчас вообще сообразить не могу.
Как искать объекты DOM? У меня весь код в одном файле для всех страниц, элементы ищутся через document.querySelector...
и как известно document есть у любой страницы, поэтому на той странице на которой нет искомого элементы кидается исключение.
Мне кажется я сейчас не могу уловить элементарных вещей.
В общем подскажите как сделать чтобы не было ошибок что элемент не найден?