样本:https://jsfiddle.net/u3m4eazx/
我有 2 张可拖动的图像和 3 个div,您可以在其中放置图像 ($dropZones).
$dropZones.forEach($z => {
$z.addEventListener('dragover', onDragOver);
$z.addEventListener('dragleave', onDragLeave);
$z.addEventListener('drop', onDrop);
});
拖动和拖动离开事件触发并完美运行。我通过添加一个 css 类对div 进行悬停效果。
const onDragOver = e => {
e.preventDefault;
let id = e.target.dataset.id;
let dropzone = document.querySelector(`.dropzone[data-id="${id}"]`);
dropzone.classList.add('ready');
};
在拖拽事件中,我只是删除了类。所以它们运行良好.
但是掉落事件不会触发。这就是我在掉落事件中所拥有的
const onDrop = e => {
console.log("Drop triggered");
alert('Drop triggered');
};
有人知道为什么事件没有触发吗?
是的,所以我回头看了一下,发现preventDefault()
函数写错了。
我写的没有()
.
无论如何,谢谢。