#javascript #jquery
Вопрос:
Можно ли вызвать и запустить функцию на странице, скажем a.html
, со страницы b.html
страница a.html
похожа на приведенную ниже, в которой есть функция обновления цвета фона страницы
<!DOCTYPE html>
<html>
<head>
<title>Page A</title>
</head>
<body>
<h1>This is Page A</h1>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js" referrerpolicy="no-referrer"></script>
<script>
function UpdatePageA(){
$("body").css("background-color","gold");
}
</script>
</body>
</html>
Страница b.html
похожа
<!DOCTYPE html>
<html>
<head>
<title>Page B</title>
</head>
<body>
<h1>Update Page A from Here</h1>
<button type="button" class="btn update-page-a">Update Page A</button>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js" referrerpolicy="no-referrer"></script>
<script>
$(".update-page-a").on("click", function(){
UpdatePageA();
});
</script>
</body>
</html>
Комментарии:
1. Вы хотите , чтобы при нажатии кнопки
.update-page-a
изменился внешний вид страницы А? Или вы просто хотите повторно использовать эту функциюUpdatePageA()
, чтобы изменить цвет фонаbody
на странице B?2. Привет, вообще-то, первая часть. Я хочу обновить страницу A со страницы B
Ответ №1:
Вариант № 4 здесь: https://blog.bitsrc.io/4-ways-to-communicate-across-browser-tabs-in-realtime-e4f5f6cbedca
Это при условии, что у вас открыты обе вкладки. Если вы говорите о последовательном переходе от a.html чтобы b.html, затем вы можете использовать параметры строки запроса или локальное хранилище.
Комментарии:
1. Пожалуйста, обратите внимание на эту часть:
So this approach only for Browser Tabs opened via window.open() or document.open()