Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Mengubah Saiz Ketinggian iFrame Secara Dinamik agar Sesuai dengan Kandungannya Merentas Pelayar?

Bagaimanakah Saya Boleh Mengubah Saiz Ketinggian iFrame Secara Dinamik agar Sesuai dengan Kandungannya Merentas Pelayar?

Mary-Kate Olsen
Lepaskan: 2024-11-29 18:40:10
asal
672 orang telah melayarinya

How Can I Dynamically Resize an iFrame's Height to Fit its Content Across Browsers?

Mengubah Saiz Ketinggian iFrame Secara Dinamik kepada Padanan Kandungan

Apabila membenamkan halaman aspx dalam iFrame, ketinggian iFrame mungkin tidak dapat menampung kandungannya dengan secukupnya, mengakibatkan bar skrol yang tidak diingini. Untuk menangani isu ini, mari kita terokai penyelesaian merentas penyemak imbas.

Memahami Cabaran Merentas Penyemak Imbas

Pendekatan jQuery yang disediakan berjaya melaraskan ketinggian iFrame dalam Chrome tetapi menghadapi masalah dalam Firefox. Percanggahan ini timbul daripada variasi dalam cara penyemak imbas berbeza mengendalikan sekatan skrip merentas tapak (XSS).

Penyelesaian Optimum

Untuk menentukan ketinggian kandungan iFrame, kami memanfaatkan contentWindow.document. badan.scrollHeight. Setelah iFrame dimuatkan, kami mengubah saiznya secara dinamik menggunakan JavaScript berikut:

function iframeLoaded() {
    var iFrameID = document.getElementById('idIframe');
    if(iFrameID) {
          iFrameID.height = "";
          iFrameID.height = iFrameID.contentWindow.document.body.scrollHeight + "px";
    }   
}
Salin selepas log masuk

Pelaksanaan

Sertakan JavaScript ini dalam halaman tempat anda membenamkan iFrame dan sambungkan pengendali acara ke atribut onLoad bagi teg iFrame:

<iframe>
Salin selepas log masuk

Penggunaan Lanjutan Kes

Dalam senario di mana kemas kini kandungan dalam iFrame memerlukan pencetus manual penubah, anda boleh menggunakan iframeLoaded() daripada skrip kandungan iFrame:

parent.iframeLoaded();
Salin selepas log masuk

Penyelesaian komprehensif ini menyediakan penyemak imbas silang keserasian untuk mengubah saiz secara dinamik ketinggian iFrame berdasarkan kandungannya, menghapuskan skrol yang tidak diingini bar.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengubah Saiz Ketinggian iFrame Secara Dinamik agar Sesuai dengan Kandungannya Merentas Pelayar?. 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