Rumah >hujung hadapan web >tutorial js >Kaedah JS untuk menentukan kemahiran collision_javascript

Kaedah JS untuk menentukan kemahiran collision_javascript

WBOY
WBOYasal
2016-05-16 16:14:251189semak imbas

Contoh dalam artikel ini menerangkan kaedah menentukan perlanggaran dalam JS. Kongsikan dengan semua orang untuk rujukan anda. Butirannya adalah seperti berikut:

Kaedah perlanggaran JS:

Salin kod Kod adalah seperti berikut:
/**Tentukan sama ada terdapat perlanggaran
* @param obj objek asal
* @param dobj objek sasaran
,*/
impak fungsi(obj, dobj) {
var o = {
          x: getDefaultStyle(obj, 'kiri'),
      y: getDefaultStyle(obj, 'atas'),
           w: getDefaultStyle(obj, 'width'),
h: getDefaultStyle(obj, 'height')
}  

var d = {
          x: getDefaultStyle(dobj, 'kiri'),
      y: getDefaultStyle(dobj, 'atas'),
           w: getDefaultStyle(dobj, 'width'),
h: getDefaultStyle(dobj, 'height')
}  

var px, py;
px = o.x <= d.x ? d.x : o.x; py = o.y <= d.y ? d.y : o.y;
// Tentukan sama ada titik berada dalam kedua-dua objek
jika (px >= o.x && px <= o.x o.w && py >= o.y && py <= o.y o.h && px >= d.x && px <= d.x d.w && py >= d.y && py < = d.y d.h) {
         kembali benar;                               } lain {
          kembali palsu;                                }  
}

/**Dapatkan sifat objek
* @param obj Objek
* Atribut atribut @param
,*/
fungsi getDefaultStyle(obj, atribut) {
Kembalikan parseInt(obj.currentStyle ? obj.currentStyle[attribute] : document.defaultView.getComputedStyle(obj, false)[attribute]); }


Contohnya adalah seperti berikut:


Salin kod


Kod adalah seperti berikut:
 
 
  
  demo