0

我正在尝试在 textarea 中创建撤消功能,因为我发现 IE 上的“必须在工作中使用它”的本机功能缺失。

这个想法是在用户按下空格、退格、删除或右键单击鼠标时推送到数组。我遇到问题的地方是使用 Z 键浏览数组“历史”。我在想,如果我每次按下 Z 键时都增加一个计数器,然后从 array.length 中减去它,这将允许我浏览历史记录。

这是我为测试http://jsfiddle.net/synthet1c/5fqe3/2/而制作的 JSFiddle

这是我遇到问题的脚本部分

//keypress listener script

var pos = undo.length - 1

if(key_code == "90"){
var counter = 0
counter++;
var newCount = pos - counter;
e.preventDefault();
id("myTextarea").value = undo[newCount] + " ";
id('counter').innerHTML = counter;

}

此外,在按空格键以节省内存时仅将最后一个单词推入数组的任何想法都会很棒。

4

2 回答 2

1

好吧,每次按键都将您的计数器重置为 0 var counter = 0,如果您想增加计数器,您应该声明您var counter = 0;退出按键事件。在您的操作之后增加计数器

http://jsfiddle.net/roine/5fqe3/4/

于 2012-12-14T02:22:50.853 回答
0

编写自己的撤消工具是一个很好的练习,但您可能还需要考虑现有的解决方案,例如StackOverflow 文章中提到的那些

于 2012-12-14T02:30:32.663 回答