function drag_drop(event) {
event.preventDefault(); /* Prevent undesirable default behavior while dropping */
var elem_id = event.dataTransfer.getData("text");
event.target.appendChild( document.getElementById(elem_id) );
$('#app_status').innerHTML = "Dropped "+elem_id+" into the "+event.target.getAttribute('id');
document.getElementById(elem_id).removeAttribute("draggable");
document.getElementById(elem_id).style.cursor = "default";
droppedIn = true;
}
This function is working fine but when I update it with jQuery's $()
method instead of document.getElementById
it gives a error :
index.js:22 Uncaught TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'.
at drag_drop (index.js:22)
at HTMLDivElement.ondrop (index.html?_ijt=ifai0ih42qnjkillablo2ulcln:15)
The updated function looks like this:
function drag_drop(event) {
event.preventDefault(); /* Prevent undesirable default behavior while dropping */
var elem_id = event.dataTransfer.getData("text");
event.target.appendChild( $('#' + elem_id) );
$('#app_status').innerHTML = "Dropped "+elem_id+" into the "+event.target.getAttribute('id');
$('#' + elem_id).removeAttribute("draggable");
$('#' + elem_id).style.cursor = "default";
droppedIn = true;
}