Страницы

Поиск по вопросам

понедельник, 8 апреля 2019 г.

JS изменить текст на другой вкладке

Допустим открыта страница в браузере mysite.com/page-1.php в которой есть элемент:

Далее в новой я открываю страницу mysite.com/page-2.php в которой есть js команда которая должна сменить текст в элементе test-1 в первой вкладке - mysite.com/page-1.php
Возможно ли как то выполнить данную задачу средствами js/jquery?


Ответ

Предложенный вариант с storage работает только на одной и той де странице, то есть если открыть в нескольких табах page-1.php то предложенный вариант с window.addEventListener('storage', e => console.info('Changed')) сработает, иначе предлагаю сделать след. образом, как из ответа https://ru.stackoverflow.com/a/729727/243667
page-1.php
var storageParam = "name"; var defaultStorageVal = localStorage.getItem(storageParam); setInterval(function() { var val = localStorage.getItem(storageParam); if (val != defaultStorageVal) { document.getElementById("test-1").innerHTML=val; defaultStorageVal = val; // если alert один раз только должен сработать, убейте интервал } }, 500); // тут уже сами смотрите
page-2.php
localStorage.setItem("name", "text")

Комментариев нет:

Отправить комментарий