Krótka odpowiedź:
Nie można naprawdę przekazywać informacji o stanie z jednej karty do drugiej ...
Długa odpowiedź:
Nie można naprawdę przekazywać informacji o stanie z jednej karty do drugiej, ponieważ byłoby to bardzo poważne naruszenie piaskownicy i bezpieczeństwa.
Możesz jednak pośrednio przekazać stan między dwiema zakładkami poprzez:
Inną opcją byłoby po prostu komunikowanie się za pomocą plików cookie w celu przekazywania informacji między dwiema kartami, ale najprawdopodobniej spowodowałoby to problemy, byłoby wysoce zależne od przeglądarki i wymagało ponownego załadowania strony (i szczerze mówiąc, nigdy tego nie próbowałem i tylko o tym myślałem, ale inni zrobić go ) .
Ponieważ rozszerzenia przeglądarki są oczywiście dość ograniczającą ścieżką, należy podążać drogą komunikacji klient-serwer i opracować system umożliwiający klientom publikowanie zdarzeń na serwerze, które następnie wysyłają je ponownie (lub jakikolwiek inny rodzaj transmisji) innym klientom za pośrednictwem wybranego protokołu komunikacyjnego.
Aktualizacja 1: Jak ktoś wspomniał w komentarzu przed jego usunięciem (nie może wyrazić uznania, ponieważ nie pojawia się w skrzynce odbiorczej, przepraszam)
HTML5 wprowadza window.postMessage
API.
Przykładem może być post na blogu Johna Resiga na temat przesyłania wiadomości między oknami . I bardzo ciekawe, jeśli spojrzysz na komentarze do tego postu, zauważysz, że ktoś o imieniu Malte wspomina o bibliotece, którą napisali do użycia window.postMessage
w nowoczesnych przeglądarkach lub wersji opartej na plikach cookie w starszych przeglądarkach.
Przeczytaj je, aby uzyskać więcej informacji i przykładów:
Aktualizacja 2:
Należy pamiętać, że ponieważ 2012-03-04 specyfikacja HTML5 jest nadal wersją roboczą, więc niektóre funkcje można usunąć . Więc używaj ostrożnie ...