我正在尝试在textarea中创建一个撤销功能,因为我发现IE上的原生内容“必须在工作中使用它”缺乏。
我们的想法是在用户按下空格,退格键,删除或右键单击鼠标时随时按下阵列。我遇到麻烦的地方是用Z键浏览数组“历史”。我想如果每按一次Z键就进行一次计数器递增,然后减去array.lenght中的那个,这将允许我浏览历史记录。
这是我为测试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;
}
当按下空格键以保存在内存中时,只有将最后一个单词推入数组的任何想法都会很棒。
此致
安德鲁
答案 0 :(得分:1)
每次按键都会使用var counter = 0
将您的计数器重置为0,如果您想增加计数器,则应该从按键事件中声明var counter = 0;
。也可以在操作后增加计数器
答案 1 :(得分:0)
编写自己的撤消工具是一个很好的练习,但您可能还想考虑现有的解决方案,例如本StackOverflow article
中提到的解决方案。