'how can I dynamically add ondrag event in a created span
New to javascript, sorry my English is bad.
I call getpb() from HTML, this is what I want
<span id="drag1" title="teeth" draggable="true" ondragstart="dragThis(event)">my teeth</span>
This is what I have, I access array , I set the for loop to 10 instead of array length
function getpb(){
j=1;
var pbdiv = document.getElementById("pickBox");
for (var i=0; i<10;i++)
{
var elem = document.createElement("span");
document.getElementById("pickBox").appendChild.elem;
elem.id = [j];
elem.title = "teeth";
elem.draggable = "true";
elem.ondrag ? does not work
elem.innerHTML = "my teeth";
console.log(elem);
pbdiv.appendChild(elem);
i++;
j++;
}
}
Solution 1:[1]
You're almost there. You just need to add ondragstart event there
function dragThis(event){
//TODO: Add your logic here
console.log('dragging')
console.log(event.target.id)
}
function getpb(){
j=1;
var pbdiv = document.getElementById("pickBox");
for (var i=0; i<10;i++)
{
var elem = document.createElement("span");
document.getElementById("pickBox").appendChild.elem;
elem.id = [j];
elem.title = "teeth";
elem.draggable = "true";
elem.ondragstart = dragThis
elem.innerHTML = "my teeth";
pbdiv.appendChild(elem);
i++;
j++;
}
}
getpb()
<div id="pickBox">
</div>
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Nick Vu |
