JavaScript apa yang harus saya gunakan untuk mengarahkan ulang jendela induk dari iframe?
Saya ingin mereka mengklik hyperlink yang, menggunakan JavaScript atau metode lain, akan mengarahkan jendela induk ke URL baru.
JavaScript apa yang harus saya gunakan untuk mengarahkan ulang jendela induk dari iframe?
Saya ingin mereka mengklik hyperlink yang, menggunakan JavaScript atau metode lain, akan mengarahkan jendela induk ke URL baru.
Jawaban:
window.top.location.href = "http://www.example.com";
Seperti yang dinyatakan sebelumnya, akan mengarahkan ulang iframe induk.
sandbox
" - developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe yang sandbox
mencegah atribut JavaScript mengambil tindakan tertentu dalam iframe berdasarkan pada daftar putih yang diberikan tindakan yang diizinkan. The allow-top-navigation
properti adalah salah satu tindakan Anda dapat mengaktifkan dalam daftar putih, yang memungkinkan kode ini bekerja. Jika sandbox
atribut tidak ada, semua tindakan diizinkan. Jika ada dan string kosong, semua tindakan ditolak.
Saya menemukan itu <a href="..." target="_top">link</a>
bekerja juga
window.top.location.href = "http://example.com";
window.top
merujuk ke objek jendela halaman di bagian atas hirarki frame.
atau alternatifnya adalah sebagai berikut (menggunakan objek dokumen)
parent.document.location.href = "http://example.com";
parent.location.href = ...
. developer.mozilla.org/en/document.location
target="_parent"
bekerja sangat baik untuk saya. mudah dan tidak merepotkan!
@MIP benar, tetapi dengan versi Safari yang lebih baru, Anda perlu menambahkan atribut sandbox (HTML5) untuk memberikan akses pengalihan ke iFrame. Ada beberapa nilai spesifik yang dapat ditambahkan dengan spasi di antara mereka.
Referensi (Anda perlu menggulir): https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe
Ex:
<iframe sandbox="allow-top-navigation" src="http://google.com/"></iframe>
sandbox
atribut ini memungkinkan satu set ekstra pembatasan untuk konten dalam <iframe>
. Nilai sandbox
properti menghilangkan batasan tertentu. Jadi hati-hati dengan menggunakan fitur ini. w3schools.com/tags/att_iframe_sandbox.asp
Jika Anda ingin mengalihkan ke domain lain tanpa pengguna harus melakukan apa pun, Anda dapat menggunakan tautan dengan properti:
target="_parent"
seperti yang dikatakan sebelumnya, dan kemudian gunakan:
document.getElementById('link').click();
untuk mengarahkan secara otomatis.
Contoh:
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<a id="link" target="_parent" href="outsideDomain.html"></a>
<script type="text/javascript">
document.getElementById('link').click();
</script>
</body>
</html>
Catatan: Perintah klik javascript () harus datang setelah Anda mendeklarasikan tautan.
Coba gunakan
window.parent.window.location.href = 'http://google.com'
parent.location = 'url'
window.top.location.href = 'index.html';
Ini akan mengarahkan ulang jendela utama ke halaman indeks. Terima kasih
Kita harus menggunakan window.top.location.href untuk mengarahkan ulang jendela induk dari tindakan iframe.
URL demo :
Redirect iframe di jendela induk dengan iframe di induk yang sama:
window.parent.document.getElementById("content").src = "content.aspx?id=12";
IFrame
juga. Karena jawaban yang diterima membahas jendela teratas , saya sarankan Anda sedikit mengubah pertanyaan Anda.