JavaScript

Javascript. local storage. Дайте ссылку, где почитать о нем или сами объясните.

Дайте, пожалуйста ссылку, где в интернете почитать, как передавать значения переменных с одной страницы на другую, при переходе между ними. Или сами объясните.
на мой взгляд нормало написано в документации, она не только на мозиле удет работать
developer.mozilla.org/ru/docs/Web/API/Window/localStorage
Павел Чудинов
Павел Чудинов
74 418
Лучший ответ
LocalStorage не для того чтобы что-то сохранять "с одной страницы на другую".
Вот например хотим мы сохранить в параграф то что ввели в текстовую форму
<input type="text" id="text">
<input type="button" id="but" value="поместить в localStorage">
<p id="p"></p>
<script type="text/javascript">
but.onclick = function () {
var locStor = text.value;
localStorage.setItem('textKey', locStor);
p.innerHTML = locStor;
}
window.onload = function () {
var locVal = localStorage.getItem('textKey');
p.innerHTML = locVal;
}
>>>
В параграфе при каждом новом открытии браузера будет выводиться то что мы когда-то ввели в текстовую форму
Для твоей задачи (*как передавать значения переменных с одной страницы на другую, при переходе между ними), можно и нужно использовать Broadcast Channel API. Он как раз создан для "передачи сообщения с текущей вкладки на другие".

Пример:
// broadcastSend.js
const channel = new BroadcastChannel('channel-name')
channel.postMessage('Hello, other tab!') // поддерживается любой тип данных

// broadcastGet.js
const channel = new BroadcastChannel('channel-name')
channel.addEventListener('message', d => {
console.log('Some message by BroadcastChannel was received: ', d)
})

А посылать запрос именно тогда, когда открывается другая вкладка, можно с помощью Visibility API. После ухода пользователя со страницы у тебя нет возможности узнать, какую вкладку он открыл. Это было бы нарушением политики безопасности. Однако ты можешь сделать следующее: когда пользователь уходит с текущей вкладки, с помощью Visibility API и broadcast либо localstorage (как тебе выше уже описали) давай знать другим вкладкам, что пользователь ушёл с прошлой, при этом записывай timestamp этого действия. Далее с помощью Visibility API ты реагируешь на то, когда пользователь возвращается на другую (либо ту же) вкладку и смотришь этот timestamp. Таким образом можно понять, он зашёл с прошлой вкладки на твой сайт или нет.

Если я правильно понял задачу, то решить можно описанным выше способом. Если неправильно, то напиши, что именно хочешь делать.