标题说明它真的。这个怎么做?这两个div的是不同大小的。双方的div正在(我做一个小游戏的Jquery)。如果一个人打对方,我想的东西发生。

由于

有帮助吗?

解决方案

有对于onOverlap没有JavaScript事件,你必须做是否的div是都由你自己重叠的计算:

var valueInRange = function(value,min, max) { 
   return (value >= min) && (value <= max);
}

var overlap = function(x1,y1,w1,h1,x2,y2,w2,h2) {
   xOverlap = valueInRange(x1, x2, x2 + w2) || valueInRange(x2, x1, x1 + w1);
   yOverlap = valueInRange(y1, y2, y2 + h2) || valueInRange(y2, y1, y1 + h1);
   return xOverlap && yOverlap;
}

其他提示

你是如何造成的div移动?做到这一点的方法之一,当然,会写,鉴于两个div,作品出来他们是否重叠(获得角的坐标,只是比较了路口)一个简单的布尔返回功能。然后,在使所述的div移动的功能结束时,调用此函数,如果是采取适当的行动。

在事实上取决于你怎么做,你移动也可能两者都有的div可以使坐标这非常有效。

除此之外,我不知道有任何“onoverlap”事件或类似的,所以定期检查是我能想到的唯一可普遍适用的方法。有可能是可用的更快的方法取决于你的代码是如何组织的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top