Mengetahui apabila dua elemen telah bertindih adalah penting untuk pelbagai aplikasi web interaktif. Bayangkan permainan mudah di mana dua kotak berwarna bergerak secara berserenjang pada grid. Untuk menentukan sama ada kotak merah telah berlanggar dengan mana-mana kotak lain, anda boleh menggunakan penyelesaian jQuery/JavaScript berikut:
getPositions: Dapatkan semula kedudukan dan dimensi unsur.
bandingkanKedudukan: Membandingkan julat dua kedudukan yang diberikan dan mengembalikan benar jika ia bertindih atau bersentuhan.
bertindih: Fungsi utama menyemak pertindihan antara dua elemen. Ia menggunakan getPositions dan comparePositions untuk menentukan sama ada mana-mana paksi mereka bertindih.
Pertimbangkan HTML struktur:
<div>
Dan JavaScript yang sepadan:
var overlaps = (function () { // ... same as before ... })(); $(function () { var area = $('#area')[0], box = $('#box0')[0], html; html = $('#area').children().not(box).map(function (i) { return '<p>Red box + Box ' + (i + 1) + ' = ' + overlaps(box, this) + '</p>'; }).get().join(''); $('body').append(html); });
Skrip ini menambahkan mesej pada halaman yang menunjukkan sama ada kotak merah bertindih dengan mana-mana kotak lain.
Atas ialah kandungan terperinci Bagaimana untuk Mengesan Perlanggaran Antara Elemen dalam jQuery/JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!