Подтвердить что ты не робот

JQuery: перетаскивание: найти идентификатор цели

Я разрабатываю приложение перетаскивания. У меня есть DIV, который перетаскивается по документу, и в документе есть еще какие-либо divs, я могу перетащить один div в другие div, но как я могу найти id div, на который я уронил DIV, D/D,

Я просто хочу узнать идентификатор целевой DIV после размещения другого DIV над ним.

Спасибо

4b9b3361

Ответ 1

Вы можете получить идентификатор цели из this.id внутри функций события (демонстрация)

$(".droppable").droppable({
    drop: function(event, ui) {
        $(this).addClass("ui-state-highlight").find("p").html("Dropped in " + this.id);
    },
    over: function(event, ui) {
        $('.display').html( this.id );
    }
});

Обновлено демо, чтобы было ясно, что this.id работает в любом из событий.

Ответ 2

Если вы используете делегирование делегирования, этот будет некоторым родителем целевого div. В этом случае вы можете использовать:

var handleDrop=function(e)
{
    var target=e.target || e.srcElement;
    var id=target.id;
    // do something with it
}

Ответ 3

Вы можете использовать обработчик событий; он дает вам и тот, и тот, который тащил, и тот, который упал.

function handleDropEvent(event, ui) {
  alert('Dropped ' + ui.draggable.attr('id') + ' onto ' + event.target.id);
}

$('#someContainer').droppable({
  drop: handleDropEvent
})