【问题标题】:How do get visual topmost element - jQuery如何获得视觉最顶层元素 - jQuery
【发布时间】:2012-06-18 15:36:39
【问题描述】:

有没有使用 jQuery 获取最顶层元素的简洁方法?

我的意思不是关于 DOM 层次结构。即.closest() 不是我需要的。

我的意思是,关于z-index,显然它目前应该是:visible

我开始编写自定义选择器,但认为最好看看是否有更好的方法。

【问题讨论】:

  • 其中context?
  • @undefined:理想情况下是整个身体。

标签: jquery html css dom z-index


【解决方案1】:

试试这个:

elem = [];
$("*").each(function(i){
    elem[$(this).index()] = $(this).css('z-index');
})

function compareNumbers(a,b) {
    return a - b;
}

topmostIndex = elem.sort(compareNumbers).reverse();
alert(topmostIndex[0])

【讨论】:

  • 赞成这个,因为它解决了简单的案例。但是,z-index 最高的元素不一定是最高的吧?
【解决方案2】:

试试这个:

$(':visible').each(function(){
    var z = parseInt($(this).css('z-index'), 10);
    vat maxz = -1;
    if (!best || maxz < z) {
        best = this;
        maxz = z;
    }

});

【讨论】:

    猜你喜欢
    • 2012-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-22
    • 2014-03-07
    • 1970-01-01
    • 1970-01-01
    • 2021-09-04
    相关资源
    最近更新 更多