Jakiego kodu JavaScript potrzebuję do przekierowania okna nadrzędnego z ramki iframe?
Chcę, aby kliknęli hiperłącze, które za pomocą JavaScript lub innej metody przekieruje okno nadrzędne do nowego adresu URL.
javascript
iframe
dhtml
Kliknij opcję Upvote
źródło
źródło
IFrame
. Ponieważ zaakceptowana odpowiedź dotyczy górnego okna, proponuję nieco zmienić swoje pytanie.Odpowiedzi:
Jak wspomniano wcześniej, przekieruje nadrzędny element iframe.
źródło
sandbox
” - developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe żesandbox
zapobiega atrybutów obsługa JavaScript podejmowanie pewnych działań w ramach iframe oparte na danej białej liście dozwolonych działań.allow-top-navigation
Nieruchomość jest jednym z działań, jakie można włączyć w białej listy, co pozwala ten kod do pracy. Jeślisandbox
atrybut jest abscent, wszystkie akcje są dozwolone. Jeśli jest obecny i pusty ciąg znaków, wszystkie działania są odrzucane.Odkryłem, że to
<a href="..." target="_top">link</a>
też działaźródło
window.top
odnosi się do obiektu okna strony u góry hierarchii ramek.źródło
lub alternatywą jest następująca (przy użyciu obiektu dokumentu)
źródło
parent.location.href = ...
. developer.mozilla.org/en/document.locationtarget="_parent"
działało świetnie dla mnie. łatwe i bezproblemowe!źródło
@MIP ma rację, ale w nowszych wersjach Safari musisz dodać atrybut piaskownicy (HTML5), aby umożliwić przekierowanie do iFrame. Istnieje kilka konkretnych wartości, które można dodać ze spacją między nimi.
Odniesienie (musisz przewinąć): https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe
Dawny:
źródło
sandbox
atrybut włącza dodatkowy zestaw ograniczeń dla zawartości w<iframe>
. Wartośćsandbox
właściwości usuwa określone ograniczenia. Uważaj więc, korzystając z tej funkcji. w3schools.com/tags/att_iframe_sandbox.aspTo rozwiąże nieszczęście.
źródło
Jeśli chcesz przekierować do innej domeny bez konieczności robienia czegokolwiek, możesz użyć linku z tą właściwością:
jak powiedziano wcześniej, a następnie użyj:
aby automatycznie przekierowywał.
Przykład:
Uwaga: Polecenie click javascript musi pojawić się po zadeklarowaniu łącza.
źródło
Możliwe jest przekierowanie z ramki iframe, ale nie w celu uzyskania informacji od rodzica.
źródło
Spróbuj użyć
źródło
parent.location = 'url'
Spowoduje to przekierowanie głównego okna do strony indeksu. Dzięki
źródło
Musimy użyć window.top.location.href, aby przekierować okno nadrzędne z akcji iframe.
URL wersji demo :
źródło
Przekieruj iframe w oknie nadrzędnym przez iframe w tym samym rodzicu:
źródło