Rumah  >  Artikel  >  hujung hadapan web  >  Gunakan jQuery untuk menyelesaikan masalah ketinggian penyesuaian iframe tanpa menilai height_jquery pelayar

Gunakan jQuery untuk menyelesaikan masalah ketinggian penyesuaian iframe tanpa menilai height_jquery pelayar

WBOY
WBOYasal
2016-05-16 16:26:251203semak imbas

Berikut ialah dua kaedah yang sangat mudah Anda tidak perlu menulis apa-apa untuk menentukan ketinggian dan lebar penyemak imbas.

Hanya pilih salah satu daripada dua kaedah di bawah. Satu diletakkan pada halaman yang sama dengan iframe, dan satu lagi diletakkan pada halaman test.html.

Berhati-hati agar tidak meletakkannya di tempat yang salah.
Dalam kod iframe, berhati-hati untuk menulis ID Jika tiada ID, ia tidak dapat ditemui

Salin kod Kod adalah seperti berikut:


Kaedah 1:

Salin kod Kod adalah seperti berikut:

//Nota: Kod berikut diletakkan pada halaman yang sama dengan iframe dan dipanggil
$("#utama").load(function(){
var mainheight = $(this).contents().find("body").height() 30;
$(this).height(mainheight);
});

Kaedah 2:

Salin kod Kod adalah seperti berikut:

//Nota: Kod berikut diletakkan dalam test.html untuk memanggil
$(window.parent.document).find("#main").load(function(){
var main = $(window.parent.document).find("#main");
var thisheight = $(document).height() 30;
utama.tinggi(thisheight);
});

Dalam proses mengusahakan projek, anda perlu menggunakan iframe, tetapi iframe mempunyai ketinggian secara lalai Kandungan yang melebihi ketinggian lalai akan disembunyikan dan kandungan yang lebih kecil daripada ketinggian lalai akan menggunakan ketinggian lalai sebagai ketinggian kandungan Dalam proses mencari jawapan, saya mengetahui cara mengawal penyesuaian ketinggian iframe

ketinggian penyesuaian iframe itu sendiri adalah kaedah yang sangat mudah, iaitu mengira semula ketinggian selepas halaman dimuatkan.

Kod adalah seperti berikut:

Salin kod Kod adalah seperti berikut:

//Kaedah awam: Tetapkan ketinggian iframe untuk memastikan semua data dipaparkan
//fungsi SetPageHeight() {
// var iframe = getUrlParam('ifname');
// var myiframe = window.parent.document.getElementById(iframe);
// iframeLoaded(myiframe);
//}
var iframeLoaded = fungsi (iframe) {
Jika (iframe.src.length > 0) {
Jika (!iframe.readyState || iframe.readyState == "lengkap") {
            var bTinggi =
              iframe.contentWindow.document.body.scrollHeight;
            var dTinggi =
iframe.contentWindow.document.documentElement.scrollHeight;
          ketinggian var = Math.max(bHeight, dHeight);
               iframe.height = ketinggian;
}
}
}
//Tetapkan semula ketinggian iframe semasa paging; selepas pengubahsuaian: iframe.name = iframe.id
var reSetIframeHeight = function()
{
Cuba {
      var oIframe = parent.document.getElementById(window.name);
        oIframe.height = 100;
iframeLoaded(oIframe);
}
tangkap (err)
{
         cuba {
             parent.document.getElementById(window.name).height = 1000;
              } tangkapan (err2) { }
}
}

Panggil kaedah reSetIframeHeight();

Kenyataan:
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