JavaScript事件监听器不为拖放触发

JavaScript事件监听器不为拖放触发,javascript,Javascript,我有一个添加页面级dropzone的页面。为此,我添加了一些事件侦听器,如下所示 var dropZone = document.getElementById('dropZone'); window.addEventListener('dragenter', function (e) { console.log("test"); dropZone.style.visibility = "visible"; }); dropZone.addEventListener('dragen

我有一个添加页面级dropzone的页面。为此,我添加了一些事件侦听器,如下所示

var dropZone = document.getElementById('dropZone');
window.addEventListener('dragenter', function (e) {
    console.log("test");
    dropZone.style.visibility = "visible";
});
dropZone.addEventListener('dragenter', function (e) {
    console.log("test2");
    if (true) {
        e.dataTransfer.dropEffect = 'copy';
        e.preventDefault();
    }
});
dropZone.addEventListener('dragover', function (e) {
    if (true) {
        e.dataTransfer.dropEffect = 'copy';
        e.preventDefault();
    }
});
dropZone.addEventListener('dragleave', function (e) {
    dropZone.style.visibility = "hidden";
});
dropZone.addEventListener('drop', function (e) {
    e.preventDefault();
    dropZone.style.visibility = "hidden";

    //Code to handle the selected files
    HandleDroppedFiles(e);
});
此代码将事件侦听器添加到dropzone元素

但当我尝试拖放文件时,什么也没发生。相反,我得到了“不允许”图标(如下图),就像其他不允许拖放的页面一样


控制台日志中没有添加任何消息,即使在详细设置下也是如此。在事件侦听器被触发之前,感觉浏览器正在以某种方式阻止删除。但是,老实说,我不知道哪里出了问题,从哪里开始调试

结果是,我的代码没有问题。只是有点奇怪。我禁用了adblocker,重新启动了chrome。什么都没用。检查了谷歌硬盘,它也有同样的问题


所以,最后我重新启动了电脑,以确保Chrome正确重新启动。一切都突然恢复了正常。SMH

对我来说很好!可能是因为其他问题,比如跨源/协议问题,不允许将文件放在这里。这很可能是因为跨源的问题。让我在不同的浏览器中试用。在不同的机器上测试。它在另一台机器上工作。这是一个奇怪的新现象。