JQuery определить количество совпадений между 2 делениями - PullRequest
0 голосов
/ 09 июня 2011

У меня есть два div (прямоугольника), которые перекрывают друг друга.Как мне определить количество пересечений / перекрытий между двумя div в javascript?

Я понимаю, что получу размеры для каждого прямоугольника:offset.top, offset.left, elt.offsetWidth, elt.offsetHeight

Но оттуда я не уверен, как определить величину перекрытия.

1 Ответ

2 голосов
/ 09 июня 2011
var div1 = $('#div1');
var div2 = $('#div2');
var both = div1.add( div2 );

var leftMost = (div1.offset( ).left < div2.offset( ).left ? div1 : div2);
var rightMost = both.not( leftMost );
var topMost = (div1.offset( ).top < div2.offset( ).top ? div1 : div2);
var botMost = both.not( topMost );

var overlap = {   'x': (leftMost.offset( ).left + leftMost.outerWidth( )) - rightMost.offset( ).left,
                  'y': (topMost.offset( ).top + topMost.outerHeight( )) - botMost.offset( ).top };
...