2017-12-04 29 views
0

RPG에 대한 인벤토리 시스템을 수행하려고합니다. 사용자가 인벤토리에서 항목을 드래그하여 문자 슬롯에 놓고 장착 할 수 있기를 바랍니다.끌어서 놓기 이벤트가 정의되지 않은 채로 반환됩니다.

this.dragItem = function(event) { 
    event.dataTransfer.setData("text", event.target.id); 
} 

내가 끌어 구성 요소는 제가 데이터를 내가 항목이 내가 console.log(event)을 추가

Uncaught TypeError: Cannot read property 'dataTransfer' of undefined

이었다 드래그 할 때 내가 가진 아지트 첫 번째 오류를 얻을 수 dragItem()을 사용

$('<div>', { 
    class: 'HUDInventoryItem', 
    id: `${i}`, 
    draggable: 'true', 
    ondragstart: 'inventoryWindow.dragItem()' 
}).appendTo('#inventoryWindowItems'); 

입니다 이벤트 객체를보고 정의되지 않은 객체를 반환합니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

답변

0

이벤트를 함수에 전달하지 않습니다. 사용해보기 :

$('<div>', { 
    class: 'HUDInventoryItem', 
    id: `${i}`, 
    draggable: 'true', 
    ondragstart: 'inventoryWindow.dragItem(event)' 
}).appendTo('#inventoryWindowItems');