Rumah > hujung hadapan web > tutorial css > Bagaimana untuk Mengesan Perubahan CSS, Terutamanya Perubahan Ketinggian, Menggunakan jQuery?

Bagaimana untuk Mengesan Perubahan CSS, Terutamanya Perubahan Ketinggian, Menggunakan jQuery?

Barbara Streisand
Lepaskan: 2024-11-03 11:20:02
asal
382 orang telah melayarinya

How to Detect CSS Changes, Particularly Height Changes, Using jQuery?

Cara Mengesan Perubahan CSS menggunakan JQuery

JQuery tidak mempunyai acara terbina dalam untuk mengesan perubahan dalam atribut CSS. Walau bagaimanapun, anda boleh mencipta sendiri menggunakan pendekatan berikut:

Pemantauan DOM Berterusan (Cara Pertama):

Tinjau DOM secara berkala (mis., setiap 500 milisaat) ke bandingkan nilai atribut CSS semasa dengan nilai sebelumnya. Jika mereka berbeza, cetuskan acara.

Contoh:

<code class="javascript">var $element = $("#elementId");
var lastHeight = $("#elementId").css('height');

function checkForChanges() {
    if ($element.css('height') != lastHeight) {
        alert('xxx');
        lastHeight = $element.css('height');
    }
    setTimeout(checkForChanges, 500);
}

checkForChanges();</code>
Salin selepas log masuk

Pencetusan Peristiwa Manual (Cara Kedua):

Ikat pengendali acara tersuai pada elemen sasaran, kemudian cetuskan acara ini secara manual apabila anda menukar CSS elemen.

Contoh:

<code class="javascript">$('#mainContent').bind('heightChange', function(){
    alert('xxx');
});

$("#btnSample1").click(function() {
    $("#mainContent").css('height', '400px');
    $("#mainContent").trigger('heightChange');
});</code>
Salin selepas log masuk

Menentukan Perubahan Ketinggian Secara Khusus (Penyelesaian untuk Masalah Awal):

Dalam kes khusus mengesan perubahan ketinggian untuk div #mainContent, gunakan pendekatan kedua dengan kod berikut:

<code class="javascript">$('#mainContent').bind('heightChange', function () {
    $("#separator").css('height', $("#mainContent").height());
});</code>
Salin selepas log masuk

Ingat untuk mengikat pengendali acara sebelum membuat sebarang perubahan ketinggian pada div #mainContent.

Atas ialah kandungan terperinci Bagaimana untuk Mengesan Perubahan CSS, Terutamanya Perubahan Ketinggian, Menggunakan jQuery?. 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