查找具有指定z-index的元素

时间:2012-04-13 15:35:20

标签: javascript jquery

如何找到z-index = 10的HTML元素(-s)?

4 个答案:

答案 0 :(得分:17)

你必须迭代所有元素并检查它们的z-index:

$('*').filter(function() {
    return $(this).css('z-index') == 10;
}).each(function() {
    // do something with them   
});

答案 1 :(得分:1)

一种可能的[jQuery]解决方案:

$(".elementsToSearch").each(function()
{
    if($(this).css('z-index') == 10)
    {
        //then it's a match
    }
});

只需循环搜索与css规则匹配的元素。

答案 2 :(得分:1)

您可以通过css属性获取所有元素并对其进行过滤:

$('*').each(function(){
    if($(this).css('z-index') == 10) {
        //$(this) - is element what you need
    }
});

答案 3 :(得分:0)

在我的Chrome 43测试中,我发现@ThiefMaster's post有帮助,但不是100%。被拉的z-index的值是一个字符串。

我还使这只迭代可见元素并处理auto

这是我的更新:

var topZ = $('.thing-in-front').css('z-index')
if (topZ != 'auto') {
    topZ = parseInt(topZ);
    $('*:visible').filter(function() {
        var thisZ = $(this).css('z-index')
        return thisZ != 'auto' && parseInt(thisZ) >= topZ;
    }).each(function() {
        $(this).css('z-index', topZ - 1);
    })
}