Javascript 当用户当前正在键入时,如何从他/她那里捕获数据?

Javascript 当用户当前正在键入时,如何从他/她那里捕获数据?,javascript,java,linked-list,stack,undo-redo,Javascript,Java,Linked List,Stack,Undo Redo,我正在创建一个将堆栈用作数据结构的程序。该程序的主要功能是重做和撤消。用户将在GUI上键入任何内容,并且将有两个按钮,重做和撤消。我想将每个单词存储在一个特定的节点上,这样每当用户按下撤销按钮时,文本框的前一个状态就会被应用 所以问题是,当用户停止键入时,我如何捕获数据?我应该买个计时器吗?然后呢?或者我应该创建一个条件,将每个单词存储在一个节点上 您可以使用setTimeout创建一个简单的去Bounce,以便只记录x毫秒后的状态(不键入)。状态只能存储在数组中。从中弹出项目以进行撤消 这是一

我正在创建一个将堆栈用作数据结构的程序。该程序的主要功能是重做和撤消。用户将在GUI上键入任何内容,并且将有两个按钮,重做和撤消。我想将每个单词存储在一个特定的节点上,这样每当用户按下撤销按钮时,文本框的前一个状态就会被应用


所以问题是,当用户停止键入时,我如何捕获数据?我应该买个计时器吗?然后呢?或者我应该创建一个条件,将每个单词存储在一个节点上

您可以使用setTimeout创建一个简单的去Bounce,以便只记录x毫秒后的状态(不键入)。状态只能存储在数组中。从中弹出项目以进行撤消

这是一个简单的概念证明。我并不为此感到骄傲,但这应该足以让你开始。注意,我使用jQuery是为了方便,但在vanilla JS中使用jQuery相当简单

$function{ var debounce=null,//ref表示去Bouncer超时 $textarea=$myTextarea, $undo=$undo, $undocount=$undo span, 历史=[]; $textarea.onkeyup,函数{ clearTimeoutdebounce;//清除去Bounce 去盎司=设置时间输出功能{ 历史记录。推送$textarea.val; $undocount.texthistory.length; }, 300; }.onblur,函数{ history.pop; }; $undo.onclick,函数{ $undocount.texthistory.length; $textarea.valhistory.pop; } };
撤销[0]为什么要使用Javascript和Java标记?您将使用什么技术编写UI?问题到底是什么,如何检测用户何时停止键入?Java对于JavaScript就像火腿对于仓鼠一样。Java和JavaScript是两个完全不同的东西。找出您使用的是哪一个,然后单击“确定”。而且