2

Я не уверен, почему setData и getData не определены, когда я вызываю его через пользовательский интерфейс jQuery.Невозможно прочитать свойство 'setData' of undefined - jQuery UI Touch Punch

Я делаю

$(`#selector`).draggable({ 
      start: function(event: any) { 
       drag(event); 
      }, 
      stop: function(event: any) { 
       console.log('stopped'); 
      } 
     }); 

и в сопротивление():

drag(event: any) { 
    event.originalEvent.dataTransfer.setData("text, application/x-moz-node", event.target.id); 
} 

originalEvent является ссылкой на этот раствор here

Однако я по-прежнему получать те же результаты.

Cannot read property 'setData' of undefined

Я использую машинопись, а также (не уверен, сколько разница это делает).

ответ

3

это проблема с JQuery, и вы можете решить, добавив следующий код при загрузке страницы или перед использованием DataTransfer

jQuery.event.props.push('dataTransfer'); 

Пример:

jQuery.event.props.push('dataTransfer'); 
event.dataTransfer.setData("Text", event.target.id); 
0

Это из обертки JQuery . Мы должны добавить 'dataTransfer' к объекту Event.

Примечание: $.event.props был удален в JQuery 3.0 так что вам нужно использования $.event.addProp вместо этого.

Пример:

$(document).ready(function(){ 

    $.event.addProp('dataTransfer'); 

});