过去,当您使用JavaScript设置 textarea
的 value
时,Firefox允许用户撤消此更改(例如,按ctrl + Z) 。但是,这不再起作用,并且似乎没有任何不错的选择。
我尝试使用 document.execCommand
修改 textarea
,但这需要您选择要修改的文本,并且不会出现以便可以自动选择 textarea
中的文本。
我也听说过 document.createEvent(“ TextEvent”)
,但是我找不到很多有关此的信息。看来您只能在光标处插入文本,而我也需要删除文本。
创建自己的撤消/重做系统并捕获 ctrl + Z / Y 印刷机是不可接受的解决方案。
这里已经提出了类似的问题,但是它们只涉及在光标处插入 文本,而不完全改变文本区域的值。
答案 0 :(得分:1)
您可以使用setSelectionRange
API来手动操纵文本区域的选择。从textarea.selectionStart
和textarea.selectionEnd
获取原始值。