基于jQuery判断两个元素是否有重叠部分的代码



// 假设有两个元素,使用它们的ID来获取jQuery对象
var elem1 = $('#element1');
var elem2 = $('#element2');

// 获取元素的边界位置
var rect1 = elem1[0].getBoundingClientRect();
var rect2 = elem2[0].getBoundingClientRect();

// 检查两个矩形是否有重叠
function isOverlapping(r1, r2) {
    return !(r2.left > r1.right || 
             r2.right < r1.left || 
             r2.top > r1.bottom || 
             r2.bottom < r1.top);
}

// 使用函数检查是否重叠
if (isOverlapping(rect1, rect2)) {
    console.log('元素有重叠部分');
} else {
    console.log('元素没有重叠部分');
}

这段代码使用了jQuery来获取页面上两个元素,并使用原生JavaScript的`getBoundingClientRect()`方法来获取这两个元素的边界矩形。然后,定义了一个`isOverlapping`函数来检查这两个矩形是否有重叠部分。最后,根据检查结果输出相应的信息。这种方法简洁且有效,适用于大多数需要判断元素重叠的场景。