Найти элемент с указанным z-индексом

Как найти HTML-элемент (-s) с z-index= 10, например?

Ответ 1

Вам нужно перебрать все элементы и проверить их z-index:

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

Ответ 2

Одно из возможных решений [jQuery]:

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

Просто перебирает элементы, которые ищут соответствие правилу css.

Ответ 3

Вы можете получить все элементы и отфильтровать их с помощью свойства css:

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

Ответ 4

В моем тестировании в 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);
    })
}