Rumah > hujung hadapan web > tutorial js > Apakah Perbezaan Antara screenX/Y, clientX/Y dan pageX/Y dalam Pembangunan Web?

Apakah Perbezaan Antara screenX/Y, clientX/Y dan pageX/Y dalam Pembangunan Web?

DDD
Lepaskan: 2024-11-15 08:59:02
asal
538 orang telah melayarinya

What's the Difference Between screenX/Y, clientX/Y, and pageX/Y in Web Development?

Memahami ScreenX/Y, ClientX/Y dan PageX/Y

Dalam bidang pembangunan web, memahami perbezaan antara screenX/ Y, clientX/Y dan pageX/Y adalah penting untuk navigasi yang tepat dan elemen kedudukan pada halaman.

Mentakrifkan Koordinat

  • pageX /Y: Koordinat relatif kepada keseluruhan halaman yang diberikan, termasuk kawasan yang tersembunyi dengan menatal.
  • clientX/Y: Koordinat relatif kepada bahagian halaman yang boleh dilihat dalam tetingkap penyemak imbas.
  • screenX/Y: Selaras relatif kepada skrin fizikal.

Contoh Penggunaan

Pertimbangkan web halaman dengan kandungannya melangkaui port pandang. Apabila pengguna menatal ke bawah, nilai pageY dan pageX masih akan mewakili kedudukan kursor tetikus berbanding keseluruhan halaman. Walau bagaimanapun, nilai clientX dan clientY akan dikemas kini untuk mencerminkan kedudukan dalam kawasan yang boleh dilihat.

Pertimbangan Safari iPad

Untuk Safari iPad, port pandangan adalah lebih kecil daripada fizikal skrin. Oleh itu, koordinat clientX/Y dan pageX/Y akan berbeza daripada koordinat screenX/Y.

Demo dan Coretan Kod

Untuk menggambarkan perbezaan ini, anda boleh melawati tunjuk cara yang disediakan atau laksanakan coretan JavaScript berikut:

document.addEventListener('DOMContentLoaded', () => {
  const info = document.getElementById('info');
  const updateInfo = event => {
    const { clientX, clientY, pageX, pageY } = event;
    info.innerHTML = `clientX: ${clientX} clientY: ${clientY}<br />pageX: ${pageX} pageY: ${pageY}`;
  };
  document.addEventListener('mouseover', updateInfo);
  document.addEventListener('mousemove', updateInfo);
});
Salin selepas log masuk

Coretan ini menunjukkan kemas kini dinamik koordinat semasa tetikus bergerak ke atas dan menatal halaman.

Atas ialah kandungan terperinci Apakah Perbezaan Antara screenX/Y, clientX/Y dan pageX/Y dalam Pembangunan Web?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan