Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Mencetuskan Fungsi Selepas Selesai Saiz Tetingkap dalam jQuery?

Bagaimana untuk Mencetuskan Fungsi Selepas Selesai Saiz Tetingkap dalam jQuery?

Linda Hamilton
Linda Hamiltonasal
2024-11-12 03:07:02321semak imbas

How to Trigger a Function After Window Resize Completion in jQuery?

JQuery: Menangkap Peristiwa Ubah Saiz Setelah Selesai

Acara mengubah saiz jQuery boleh dicetuskan secara berterusan semasa saiz semula tetingkap, yang membawa kepada isu prestasi. Untuk menangani perkara ini, kami berhasrat untuk menggunakan fungsi hanya selepas saiz semula telah disimpulkan.

Penyelesaian Menggunakan Manipulasi Selang:

Seperti yang dicadangkan oleh thejh, kita boleh memanfaatkan fungsi setInterval untuk menyemak secara berkala sama ada penyemak imbas telah selesai mengubah saiz. Sebaik sahaja ia mengesan ketidakaktifan, ia boleh mengosongkan selang dan memanggil fungsi yang diingini:

var resizeTimer;

$(window).resize(function() {
  // Reset the resize timer if it exists
  if (resizeTimer) clearTimeout(resizeTimer);

  // Set a new resize timer
  resizeTimer = setTimeout(function() {
    // Call the desired function here
  }, 30);
});

Dalam penyelesaian ini, kami menggunakan clearTimeout untuk membatalkan sebarang pemasa ubah saiz sedia ada. Kami kemudian menetapkan pemasa baharu dengan selang masa yang singkat (30 milisaat dalam contoh ini). Setelah pemasa berlalu, kita tahu saiz semula telah dihentikan dan kita boleh melaksanakan fungsi yang diingini.

Atas ialah kandungan terperinci Bagaimana untuk Mencetuskan Fungsi Selepas Selesai Saiz Tetingkap dalam jQuery?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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