Ace 编辑器删除 addKeyboardHandler
Ace Editor deleting addKeyboardHandler
我在 Web 应用程序中使用名为 firepad 的开源编辑器。底层文本编辑器是 Ace。我在这里找到另一个 post 解释如何在 Ace 编辑器中创建只读代码块:Ace Editor: Lock or Readonly Code Segment
此代码适用于将指定的段设置为只读,但我希望能够删除只读限制。我可以删除表示已锁定区域的 ace 标记,但我仍然无法输入范围。我想删除键盘处理程序。这是我的代码的样子:
editor.keyBinding.addKeyboardHandler({
handleKeyboard : function(data, hash, keyString, keyCode, event) {
if (hash === -1 || (keyCode <= 40 && keyCode >= 37)) return false;
if (intersects(range)) {
return {command:"null", passEvent:false};
}
}
});
我在网上找不到任何关于 addKeyboardHandler 方法的文档。任何帮助将不胜感激!
使用removeKeyboardHandler
方法删除它https://github.com/ajaxorg/ace/blob/f757c8568/lib/ace/keyboard/keybinding.js#L80
var kb = { handleKeyboard : function() {...} }
editor.keyBinding.addKeyboardHandler(kb) // add kb
editor.keyBinding.removeKeyboardHandler(kb) // remove kb
我在 Web 应用程序中使用名为 firepad 的开源编辑器。底层文本编辑器是 Ace。我在这里找到另一个 post 解释如何在 Ace 编辑器中创建只读代码块:Ace Editor: Lock or Readonly Code Segment
此代码适用于将指定的段设置为只读,但我希望能够删除只读限制。我可以删除表示已锁定区域的 ace 标记,但我仍然无法输入范围。我想删除键盘处理程序。这是我的代码的样子:
editor.keyBinding.addKeyboardHandler({
handleKeyboard : function(data, hash, keyString, keyCode, event) {
if (hash === -1 || (keyCode <= 40 && keyCode >= 37)) return false;
if (intersects(range)) {
return {command:"null", passEvent:false};
}
}
});
我在网上找不到任何关于 addKeyboardHandler 方法的文档。任何帮助将不胜感激!
使用removeKeyboardHandler
方法删除它https://github.com/ajaxorg/ace/blob/f757c8568/lib/ace/keyboard/keybinding.js#L80
var kb = { handleKeyboard : function() {...} }
editor.keyBinding.addKeyboardHandler(kb) // add kb
editor.keyBinding.removeKeyboardHandler(kb) // remove kb