首页 > 解决方案 > 将事件动态添加到 div

问题描述

所以我有以下div:

<div id="mylist">

在这个 div 中,我有另一个要动态创建的 div:

<div id="object3" class="objects" 
  draggable="true"
  ondragstart="drag_start(event)" 
  ondragend="drag_end(event)">
  BWA
</div>

现在我写了一个函数:

function myFunction() {
  var node = document.createElement("div");
  node.className="objects";
  node.draggable= "true";
  var textnode = document.createTextNode("BWA");
  node.appendChild(textnode);
  document.getElementById("mylist").appendChild(node);
}

我如何附加ondragstart="drag_start(event)"ondragend=drag_end(event)"动态地添加到我创建的 div 中?

谢谢!

标签: javascripthtml

解决方案


您将需要使用addEventListener()

node.addEventListener("dragstart", drag_start, false);
node.addEventListener("dragend", drag_end, false);

这假定drag_startanddrag_end函数在正确的范围内声明,并且事件将由您的元素触发。


推荐阅读