В настоящее время я использую это для обнаружения столкновений:
var overlaps = (function () {
function getPositions( elem ) {
var pos, width, height;
pos = $( elem ).position();
width = $( elem ).width();
height = $( elem ).height();
return [ [ pos.left, pos.left + width ], [ pos.top, pos.top + height ] ];
}
function comparePositions( p1, p2 ) {
var r1, r2;
r1 = p1[0] < p2[0] ? p1 : p2;
r2 = p1[0] < p2[0] ? p2 : p1;
return r1[1] > r2[0] || r1[0] === r2[0];
}
return function ( a, b ) {
var pos1 = getPositions( a ),
pos2 = getPositions( b );
return comparePositions( pos1[0], pos2[0] ) && comparePositions( pos1[1], pos2[1] );
};
})();
Но проблема в том, что я работаю с изометрическими изображениями зданий, поэтому есть большая пустая область, которую вы не можете разместить в данный момент.Например:Поэтому я не могу разместить их ближе друг к другу.Как я могу это исправить,Мое изображение загружается так:
<div id='obj' name="build_6" class="build_88" style='top:584px;left:1094px;'><img src ="img/buildings/6.png" /></div>
Спасибо,Джеффри