我的目标是传递正在拖动的对象中的数据,以便我可以在drop函数中访问此数据。这是我的代码:
$('.draggable').data('testData', 'Test data');
$('.draggable').draggable({
zIndex: 999,
revert: true,
revertDuration: 0,
helper: function(ui) {
let $el = $('<div class="helper">Helper</div>');
let data = $(this).data('testData');
$el.data('event', data + ' (modified by helper)');
$(this).css('visibility', '\ii');
return $el;
},
start: function(event, ui) {
$('p').text('Drag started');
}
});
$('.droppable').droppable({
drop: function(event, ui) {
$('p').html($(this).data('testData'));
}
});
在helper
函数中,我按$el.data('event', 'Modified by helper');
传递数据。由于某些原因,无法在drop
函数内访问它。难道我做错了什么?或者我应该使用完全不同的方法来实现它(比如,通过全局变量,嗯,我不喜欢这样:))