Ace JS 编辑器 - Enable/Disable 编辑器中的撤消和重做按钮
Ace JS Editor - Enable/Disable Undo and Redo buttons in editor
我在尝试实现一种方法来根据 UndoManager 自动启用或禁用我的撤消和重做按钮时遇到一些问题。
var editor = ace.edit(editorElement);
editor.on('change', function (e) {
var um = editor.getSession().getUndoManager();
$('button.undo').attr('disabled', um.hasUndo() ? false : true );
$('button.redo').attr('disabled', um.hasRedo() ? false : true );
});
当您对文档进行第一次更改时,它不会更改按钮的禁用状态。此时 UndoManager 还没有被告知发生了变化。
我没有看到任何适合测试 UndoManager 状态的事件。
使用 input
事件而不是 change
事件。 undomanager 在 change
事件触发后异步更新,然后 input
事件发出。
我在尝试实现一种方法来根据 UndoManager 自动启用或禁用我的撤消和重做按钮时遇到一些问题。
var editor = ace.edit(editorElement);
editor.on('change', function (e) {
var um = editor.getSession().getUndoManager();
$('button.undo').attr('disabled', um.hasUndo() ? false : true );
$('button.redo').attr('disabled', um.hasRedo() ? false : true );
});
当您对文档进行第一次更改时,它不会更改按钮的禁用状态。此时 UndoManager 还没有被告知发生了变化。
我没有看到任何适合测试 UndoManager 状态的事件。
使用 input
事件而不是 change
事件。 undomanager 在 change
事件触发后异步更新,然后 input
事件发出。