Выберите DIV с самым высоким z-индексом

Пример кода, таким образом, я могу начать объяснять эту проблему:

<div style="z-index:5">5</div>
<div style="z-index:2">2</div>
<div style="z-index:1">1</div>
<div style="z-index:4">4</div>
<div style="z-index:3">3</div>

(z-индексные значения не имеют значения, и их порядок, еще меньше. Просто пример кода)

Проблема: Я хочу выбрать (или использование CSS или JS с jQuery) DIV с самым высоким z-индексным значением. В случае выше, я хочу выбрать первый, потому что это - z-индекс 5, выше, чем все другие z-индексы.

Существует ли способ сделать это? Дополнительная информация: я пишу Простой Менеджер окон с jQuery + jQuery UI, и z-индексы присвоены опцией стека в .draggable. Я, может казаться, не нахожу способ сделать jQuery, чтобы присвоить последнему перетащенному элементу класс также, таким образом, я иду самым высоким z-индексом путем. Какая-либо справка?Спасибо.

6
задан Robert Cartaino 23 February 2010 в 16:58
поделиться

4 ответа

[

] Я уверен, что вы могли бы использовать событие стопа для получения доступа к недавно перетаскиваемому элементу, т.е.:[

]. [
$('.selector').draggable({
   stop: function(event, ui) {
      $(event.target).addClass('justDragged');
   }
});
] [

] Если вы хотите, чтобы все функции/переменные были привязаны к событию, вы можете использовать следующее: [

]. [
var str = '';
for (i in event) {
    str += i + ', ';
}
alert(str);
] [

] Это должно дать вам хорошее представление о том, что доступно в любом количестве параметров обратного вызова jQuery. [

]
2
ответ дан 17 December 2019 в 20:32
поделиться

Я только что понял, что в .draggable есть событие 'start dragging'. Как глупо с моей стороны.

$("#window-"+id+".staticwindow.stwin").draggable({
...
    start: function(e, u){
        $(".window").removeClass('active');
        $(this).addClass('active');
    }
});

Хотя этот мой подход больше не связан с моим первоначальным вопросом, по крайней мере, нет никакого перетаскивания. Я не приму никакого ответа, потому что, похоже, для этого нужен петля. (Хотя я слегка склонен принимать ответ по zarko-o, потому что это заставляет меня задуматься о событиях)

Спасибо всем за ваши ответы!

0
ответ дан 17 December 2019 в 20:32
поделиться
[

] Вы всегда можете протестировать против []jQuery(".yourDivs").css("z-index")[] после того, как вы добавили класс на всех ваших divs.[

].
0
ответ дан 17 December 2019 в 20:32
поделиться
[

] На вашем месте я бы просто прикрепил событие на каждый нырок. Я думаю, что тогда Javascript или jQuery автоматически примет во внимание информацию о зиндексе, и Вы получите событие именно на DIV, на которое Вы кликнули.[

].
0
ответ дан 17 December 2019 в 20:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: