Rumah > hujung hadapan web > tutorial js > Adakah Halaman Web Saya Dimuatkan Secara Terus atau Di Dalam iFrame?

Adakah Halaman Web Saya Dimuatkan Secara Terus atau Di Dalam iFrame?

Mary-Kate Olsen
Lepaskan: 2024-12-14 08:54:12
asal
163 orang telah melayarinya

Is My Webpage Loaded Directly or Inside an iFrame?

Mengenal pasti iFrame lwn. Pemuatan Halaman Langsung

Dalam pembangunan web, mungkin perlu untuk menentukan sama ada halaman web sedang dimuatkan di dalam iFrame atau terus ke dalam tetingkap penyemak imbas . Perbezaan ini boleh memberi implikasi kepada kelakuan dan kefungsian halaman web.

Satu kaedah untuk mengenal pasti perbezaan ini ialah dengan membandingkan objek window.self dan window.top. Dalam halaman web yang dimuatkan terus ke dalam tetingkap penyemak imbas, kedua-dua objek ini akan merujuk objek tetingkap yang sama. Walau bagaimanapun, apabila dimuatkan dalam iframe, window.self akan merujuk tetingkap iframe, manakala window.top akan merujuk tetingkap induk.

Untuk menyemak ini dengan cara yang mantap, seseorang boleh menggunakan kod berikut:

const inIframe = () => window.self !== window.top;
Salin selepas log masuk
Salin selepas log masuk

Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa, walaupun boleh dipercayai dalam kebanyakan penyemak imbas, pendekatan ini boleh dipengaruhi oleh sekatan silang asal, terutamanya dalam Internet Explorer. Oleh itu, adalah penting untuk mengendalikan kemungkinan ralat dengan berhati-hati.

Kemas kini (2024):

Menurut dokumentasi mengenai akses API skrip silang asal, window.self dan window .atas termasuk dalam sifat silang asal yang dibenarkan. Ini menunjukkan bahawa kod berikut harus menyediakan cara yang lebih konsisten dan boleh dipercayai untuk mengesan iFrames:

const inIframe = () => window.self !== window.top;
Salin selepas log masuk
Salin selepas log masuk

Atas ialah kandungan terperinci Adakah Halaman Web Saya Dimuatkan Secara Terus atau Di Dalam iFrame?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan