JS实现判断碰撞的方法

前端之家收集整理的这篇文章主要介绍了JS实现判断碰撞的方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

本文实例讲述了JS实现判断碰撞的方法分享给大家供大家参考。具体如下:

JS判断碰撞方法

代码如下:
var d = {
x: getDefaultStyle(dobj,
y: getDefaultStyle(dobj,
w: getDefaultStyle(dobj,
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;

// 判断点是否都在两个对象中
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 {
return false;
}
}

/** 获取对象属性

  • @param obj 对象
  • @param attribute 属性
    */
    function getDefaultStyle(obj,attribute) {
    return parseInt(obj.currentStyle ? obj.currentStyle[attribute] : document.defaultView.getComputedStyle(obj,false)[attribute]);
    }

示例如下:

代码如下:
demo