Bagaimana untuk Semak sama ada Elemen Div Kelihatan dalam Viewport Menggunakan jQuery?

Barbara Streisand
Lepaskan: 2024-10-26 03:32:27
asal
204 orang telah melayarinya

How to Check if a Div Element is Visible in the Viewport Using jQuery?

Menyemak Keterlihatan Elemen dalam Viewport Menggunakan jQuery

Dalam senario penyelesaian masalah ini, matlamatnya adalah untuk mengesahkan sama ada elemen div dengan media kelas " " hadir dalam port pandangan kelihatan penyemak imbas, tanpa mengira kedudukan tatal. Pemalam jQuery-visible telah dikenal pasti sebagai penyelesaian yang berpotensi, tetapi pelaksanaannya masih tidak jelas.

Untuk menyelesaikan isu ini, fungsi jQuery tersuai boleh digunakan untuk menentukan keterlihatan elemen dalam viewport:

$.fn.isInViewport = function() {
  var elementTop = $(this).offset().top;
  var elementBottom = elementTop + $(this).outerHeight();

  var viewportTop = $(window).scrollTop();
  var viewportBottom = viewportTop + $(window).height();

  return elementBottom > viewportTop && elementTop < viewportBottom;
};
Salin selepas log masuk

Fungsi ini mengira kedudukan elemen berbanding dengan port pandangan dengan mengambil kira sempadan atas dan bawahnya. Dengan membandingkan sempadan ini dengan sempadan viewport, ia menentukan sama ada elemen kelihatan sebahagian atau sepenuhnya.

Untuk melaksanakan ini, masukkan fungsi selepas jQuery dan gunakannya seperti berikut:

$(window).on('resize scroll', function() {
  if ($('#Something').isInViewport()) {
    // Element is visible in viewport
  } else {
    // Element is not visible in viewport
  }
});
Salin selepas log masuk

Apabila tetingkap diubah saiz atau ditatal, kod ini akan menyemak sama ada elemen dengan ID "Sesuatu" kelihatan. Jika ya, tindakan yang ditentukan akan dilakukan, seperti mencetuskan kesan atau mengemas kini penampilannya.

Adalah penting untuk ambil perhatian bahawa fungsi ini hanya menyemak kedudukan menegak elemen, dengan mengandaikan bahawa penjajaran mendatarnya adalah sesuai . Jika keterlihatan mendatar dan menegak mesti dipertimbangkan, logik tambahan diperlukan untuk mengambil kira lebar elemen dan sempadan mendatar viewport.

Atas ialah kandungan terperinci Bagaimana untuk Semak sama ada Elemen Div Kelihatan dalam Viewport 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!