javascript - 在窗口中拖放项目时防止 Electron 应用程序重定向

标签 javascript electron

我不想在我的应用程序中使用 drag+drop 功能,因为不需要它。所以我想完全去掉窗口的drag+drop功能。到目前为止,当拖动图像时,Electron 窗口会打开图像路径。拖动链接时,Electron 窗口会重定向到链接。

我试过调用这个:

  document.addEventListener('dragstart',function(event){
    event.preventDefault();
    return false;
  },true);

  document.addEventListener('drop',function(event){
    event.preventDefault();
    return false;
  },true);
drop 事件 上的event.preventDefault() 应该起作用,但没有起作用

也试过this :

  BrowserWindow.on('will-navigate',function(event){
    event.preventDefault();
    return false;
  });

  BrowserWindow.webContents.on('will-navigate',function(event){
    event.preventDefault();
    return false;
  });

同样失败。有什么解决办法吗?

removeEventListener()也失败了

  var listener = function (event) {
    console.log('foo');
  };
  document.removeEventListener('drop',listener,false);

最佳答案

使用 ES6 语法的简洁版本(在 Electron 1.4.1 下为我工作)

document.addEventListener('dragover', event => event.preventDefault())
document.addEventListener('drop', event => event.preventDefault())

关于javascript - 在窗口中拖放项目时防止 Electron 应用程序重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31670803/

相关文章:

javascript - SetInterval/Slider 不适用于 Chrome

Javascript 函数总是返回 null

angularjs - 缺少脚本 : start Electron

node.js - 如何在Electron的第二个窗口中隐藏菜单?

使用 Google OAuth 的 Electron 应用程序 : "this browser or app may not be secure"

javascript - SVG 图像未在 web-worker 中加载

javascript - 如何使用变量作为属性标题编写 taffyDB 查询?

javascript - jQuery contextMenu 复选框被选中

node.js - 找不到模块 '../dialog'(Electron fatal error )

node.js - Electron (原子壳)Module.require的源代码在哪里?