gpt4 book ai didi

ace-editor - ace 编辑器上未触发 keydown 事件

转载 作者:行者123 更新时间:2023-12-01 09:27:27 25 4
gpt4 key购买 nike

ace 编辑器防止触发 keydown 事件。我认为它是 preventDefault

如何在执行编辑器事件之前删除此预防措施或绑定(bind)到 keydown 事件?

最佳答案

ace 只停止它已经处理过的事件,您可以使用捕获事件监听器 (editor.container.addEventListener("keydown", handler, true))或者使用 ace 的命令处理程序

更新:只阻止 ace 命令有时捕获事件处理程序会起作用,但有时 ace hashHandler 比大切换键码更好

HashHandler = require("ace/keyboard/hash_handler").HashHandler
var turn = 0
var h = new HashHandler([{
bindKey: "Up",
descr: "Block cursor movement smetimes",
exec: function(ed){
turn++
if (turn % 2)
return false // allow other ace commands to handle event
}
}])
editor.keyBinding.addKeyboardHandler(h)
// editor.keyBinding.removeKeyboardHandler(h)

或更紧凑的形式

var h = new HashHandler()
h.bindKeys({"Up": function(ed){...}})

关于ace-editor - ace 编辑器上未触发 keydown 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14042926/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com