Как управлять одним окном из другого в HTML5? - PullRequest
4 голосов
/ 08 февраля 2011

Я пытаюсь управлять одним окном из другого в HTML5.Мне бы хотелось, чтобы, когда я открываю одно окно, в которое я вхожу, и другое окно, в которое я вхожу, то из одного окна я могу нажать кнопку, и что-то происходит в другом окне.Я не уверен, с чего начать;Кто-нибудь может указать мне правильное направление?

Ответы [ 3 ]

9 голосов
/ 08 февраля 2011

Для этого вам не нужны никакие HTML5-функции, но вы легко можете сделать это с помощью javascript:

myNewWindow = window.open() открывает новое окно и назначает window -объект этого нового окна для myNewWindow, так что вы можете легко получить доступ к DOM нового окна из скрипта открытия, используя myNewWindow -вариант.

Это также работает другим способом: в скрипте в новом окне вы можете использовать window.opener для доступа к window -объекту и DOM открывающегося окна.

Просто убедитесь, что содержимое всех ваших окон загружено из одного домена, так как javascript не позволяет вам контролировать загруженный контентиз другого источника (для получения дополнительной информации по этой теме см. «Политика аналогичного происхождения»).

2 голосов
/ 24 июля 2012

Этот ответ опоздал на 6 месяцев, но для Google (как и я):

Я бы порекомендовал WebSockets для того, что вы пытаетесь сделать Джонатан. WebSockets позволяют серверу транслировать данные в любое / все окна браузера, которые открыты для вашей страницы / сайта в режиме реального времени.

Поддержка браузера в настоящее время довольно плохая , но есть хорошие прокладки, чтобы заставить его работать во всех браузерах очень эффективно. Socket.io - одно из таких решений, которое я использовал с большим успехом.

0 голосов
/ 02 февраля 2018

Я думаю, что движки JavaScript в браузерах должны позволять открывать окна (с другого URL / сервера) и использовать новый сайт как личность.

Например, если я на сайте A ссылаюсь на определенный абзац блога на сайте B, я должен иметь возможность вставлять виртуальные атрибуты <a name=""> в зависимости от расположения макета / CSS сайта B, чтобы прокрутить страницу абзац.

...