Das Beispiel in diesem Artikel beschreibt die Methode zur Kollisionsbestimmung in JS. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:
JS-Kollisionsmethode:
/**Stellen Sie fest, ob eine Kollision vorliegt
* @param obj Originalobjekt
* @param dobj Zielobjekt
*/
Funktionsauswirkung(obj, dobj) {
var o = {
x: getDefaultStyle(obj, 'left'),
y: getDefaultStyle(obj, 'top'),
w: getDefaultStyle(obj, 'width'),
h: getDefaultStyle(obj, 'height')
}
var d = {
x: getDefaultStyle(dobj, 'left'),
y: getDefaultStyle(dobj, 'top'),
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 : o.y;
// Bestimmen Sie, ob sich die Punkte in beiden Objekten befinden
if (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) {
return true;
} else {
false zurückgeben;
}
}
/**Objekteigenschaften abrufen
* @param obj Objekt
* @param-Attributattribut
*/
Funktion getDefaultStyle(obj, attribute) {
Rückgabe parseInt(obj.currentStyle ? obj.currentStyle[attribute] : document.defaultView.getComputedStyle(obj, false)[attribute]);
}
Ein Beispiel ist wie folgt:
Code kopieren
Der Code lautet wie folgt: