为了账号安全,请及时绑定邮箱和手机立即绑定

浏览器拖动事件未在 GWT 项目中触发

浏览器拖动事件未在 GWT 项目中触发

江户川乱折腾 2021-12-23 16:48:38
所以我有 2 个项目和一个针对这种情况的第三方应用程序:app - 主应用程序 gwt 库 - 我为可重复使用的 GWT 组件构建的库葡萄 js - javascript 中的拖放 html 编辑器我在grapesjs 库周围创建了一个gwt 包装器,在gwt 库游乐场中,它工作得很好。但是,当我将此库导入主应用程序时,我发现将块拖到画布上不起作用。我尽可能地深入研究,发现浏览器的“拖动”事件没有触发。为了更进一步,我进入了不同网站上的浏览器控制台,能够将拖动侦听器附加到任何元素,并且它们会正确触发。你甚至可以在堆栈上尝试它。只需检查一个元素,更改为具有draggable="true"并附加一个侦听器:$0.addEventListener($0, (event) => { console.log('drag event firing'); });然后尝试拖动元素,控制台日志将触发。好吧,如果你在我的应用程序中做同样的事情(任何元素,不仅仅是在葡萄组件中),它就不起作用。因此,似乎在全局级别以某种方式禁用了拖动事件。至少,这是我最好的猜测。我的终极问题是:什么会导致本机“拖动”事件不会在全局级别(在 GWT 或纯 Javascript 中)触发?我尝试了 Chrome 和 FF,它们的行为都一样,所以我不认为这是浏览器的问题。我不知道我的哪些代码对此有用,但如果有人问,我可以发布一些内容。
查看完整描述

1 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

我终于弄清楚是什么问题了。要一般性地回答这个问题,您可以在 index.html 中禁用所有形式的拖动事件:

<body ondragstart="return false;" ondrop="return false">
</body>

删除这些属性可以让拖动事件再次正常工作。


查看完整回答
反对 回复 2021-12-23
  • 1 回答
  • 0 关注
  • 146 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号