textbox怎样实现撤销重做

avatar
作者
筋斗云
阅读量:0

要在textbox中实现撤销和重做功能,可以通过使用JavaScript来实现。以下是一个简单的示例代码:

<!DOCTYPE html> <html> <head>   <title>撤销重做示例</title> </head> <body>  <textarea id="myTextarea" rows="4" cols="50"></textarea><br> <button onclick="undo()">撤销</button> <button onclick="redo()">重做</button>  <script>   var textarea = document.getElementById('myTextarea');   var undoStack = [];   var redoStack = [];    textarea.addEventListener('input', function() {     undoStack.push(textarea.value);     redoStack = [];   });    function undo() {     if (undoStack.length > 1) {       redoStack.push(undoStack.pop());       textarea.value = undoStack[undoStack.length - 1];     }   }    function redo() {     if (redoStack.length > 0) {       undoStack.push(redoStack.pop());       textarea.value = undoStack[undoStack.length - 1];     }   } </script>  </body> </html> 

在这个示例中,我们为textarea元素添加了一个input事件监听器,当用户输入时,会将当前内容存入undoStack数组中,并清空redoStack数组。点击撤销按钮时,会将当前内容弹出undoStack数组并存入redoStack数组,然后将上一个内容显示在textarea中。点击重做按钮时,会将redoStack数组中的内容弹出并存入undoStack数组,然后将最后一个内容显示在textarea中。

通过这种方式,我们可以实现简单的撤销和重做功能。您也可以根据自己的需求来扩展和改进这个示例。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!