首页 > 解决方案 > 最小化 onDrop、onDragover、Draggable 和 onDragStart

问题描述

我正在创建一个具有拖放设计的网站,在这个线程之后创建。看起来您需要将 ondragover、ondrop、draggable 和 ondragstart “功能”添加到您想要可拖动的元素(当然不是全部,只是您需要的元素)。是否可以将其写得更小,因此您不需要将其添加到每个元素中?

标签: javascripthtml

解决方案


您可以创建一个 id 数组并循环遍历 id,然后将事件侦听器附加到它们。

const ids = ['div1', 'div2', 'div3', 'div4'];

ids.forEach(function(id) {
   document.getElementById(id).addEventListener('drag', function( ev ) {
       ev.dataTransfer.setData('text/html', ev.target.id);
   }, false);
}

推荐阅读