// 原本是想监听粘贴操作 发现是无响应
document.addEventListener('paste', this.onpaste);
后面发现是引擎源码阻止了该事件 找到引擎所在目录删掉 阻止事件即可。
早期没有DashBoard时,cocoscreator 安装后默认放在 C://CocosCreator 目录下。
如果是通过DashBoard下载,下载的不同版本的引擎统一放在 CocosDashboard\resources.editors\Creator\xxx
以我自己的举例 :D:\cocos\CocosDashboard\resources.editors\Creator\2.4.0\resources
使用 vscode 打开该目录,全文搜索 cc.game.canvas.addEventListener("keydown"
会找到多处
image.png
cc.game.canvas.addEventListener("keydown", function (e) {
eventManager.dispatchEvent(new cc.Event.EventKeyboard(e.keyCode, true));
e.preventDefault()
e.stopPropagation()
}, false);
cc.game.canvas.addEventListener("keyup", function (e) {
eventManager.dispatchEvent(new cc.Event.EventKeyboard(e.keyCode, false));
e.preventDefault()
e.stopPropagation()
}, false);
两个监听函数都删掉x下面两行代码
e.preventDefault()
e.stopPropagation()
删掉后,重启编辑器,就能监听到粘贴事件了
document.addEventListener('paste', this.onpaste);
如果后续进行编辑器升级 比如2.4.0 升级到2.4.3 就要重复上面的操作