11

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

4

4 回答 4

17

您必须遍历所有元素并检查它们的 z-index:

$('*').filter(function() {
    return $(this).css('z-index') == 10;
}).each(function() {
    // do something with them   
});
于 2012-04-13T15:38:16.120 回答
2

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

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

只需遍历元素以搜索与 css 规则匹配的内容。

于 2012-04-13T15:38:32.127 回答
2

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

$('*').each(function(){
    if($(this).css('z-index') == 10) {
        //$(this) - is element what you need
    }
});
于 2012-04-13T15:39:30.633 回答
0

在我对 Chrome 43 的测试中,我发现@ThiefMaster 的帖子很有帮助,但不是 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);
    })
}
于 2015-05-27T16:34:17.710 回答