Этого прослеживания вопроса отвечал на Jquery drag and drop - click event registers on dropJquery перетаскивание - установить интерактивную область в перетаскиваемом на каплях
Я использую JQuery перетаскивание. Перетаскиваемые элементы содержат два вложенных divs, расположенных слева и справа. Левый div содержит текст перетаскиваемого, а правый div содержит небольшую кнопку «info», которая переключает всплывающую подсказку.
При отбрасывании я хочу, чтобы левый вложенный div, содержащий текст перетаскиваемого, можно было щелкнуть. Перепад обрабатываются следующей функцией:
function handleElementDrop(event, ui) {
var slotNumber = $(this).data('number');
var elementNumber = ui.draggable.data('number');
if (slotNumber == elementNumber) {
ui.draggable.css('cursor', 'pointer');
ui.draggable.parent().find('.element_left').click(function(e) {
window.open(ui.draggable.attr('data-link'));
});
ui.draggable.parent().find('.info').addClass('correct');
ui.draggable.addClass('correct');
ui.draggable.draggable('disable');
$(this).droppable('disable');
ui.draggable.position({ of: $(this), my: 'left top', at: 'left top' });
ui.draggable.draggable('option', 'revert', false);
}
}
А где:
ui.draggable.parent().find('.element_left').click(function(e) {
window.open(ui.draggable.attr('data-link'));
});
Работы для щелчков левого вложенного сНа правильны, но вопрос, который я отвечал в моем последнем вопросе, как представляется, остается , То есть, при удалении происходит событие щелчка. Это происходит очень спорадический ... У меня есть скрипка в http://jsfiddle.net/5wcaQ/
Нет ... element_right ДИВ содержит якорный тег с классом информации. Это кнопка информации, которая используется только для показа всплывающей подсказки, а не для открытия ссылки на данные для элемента ... это делается нажатием element_left. – IlludiumPu36
@PeterBrowne проверить обновление –
Да, я попробовал ui.draggable.find ('. Element_left'). Click (function (e) {тоже и по-прежнему имеет событие клика, которое иногда срабатывает. Я попробовал вашу скрипку выше и сделал первый 3 слота, а затем последний слот, и событие было запущено в последнем слоте ... – IlludiumPu36