找到在jquery中(视觉上)堆叠在元素下的元素

前端之家收集整理的这篇文章主要介绍了找到在jquery中(视觉上)堆叠在元素下的元素前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果我有2个div(z索引没有分配),一个分层覆盖,我可以使用顶部div的引用来找到它下面的div吗?

就DOM结构而言,这两个div将是兄弟姐妹.但在视觉上它们彼此堆叠在一起.

这是一个例子:

<body>
<div id="Box1" style="background:#e0e0e0;height:100px;width:100px;"></div>
<div id="Box2" style="background:#000000;height:100px;width:100px;margin-top:-50px;"></div>
</body>

结果如下:

所以我想弄清楚,当有黑色div,Box2,一种在jquery中返回Box1的方法(使用选择器),因为Box1在Box2下面,使用jquery.

解决方法

检查Box1是否与页面上的某个位置共享相同的位置.

只是因为我有点无聊,我做了这个真棒

http://jsfiddle.net/hunter/PBAb6/

function GetAllElementsAt(x,y) {
    var $elements = $("body *").map(function() {
        var $this = $(this);
        var offset = $this.offset();
        var l = offset.left;
        var t = offset.top;
        var h = $this.height();
        var w = $this.width();

        var maxx = l + w;
        var maxy = t + h;

        return (y <= maxy && y >= t) && (x <= maxx && x >= l) ? $this : null;
    });

    return $elements;
}
原文链接:https://www.f2er.com/jquery/178917.html

猜你在找的jQuery相关文章