在输入字段中按箭头键时,禁用默认浏览器行为以向右或向左移动光标

时间:2010-06-23 15:50:27

标签: javascript mozilla

我正在使用Firefox来执行此操作,但它适用于IE6 ... go figure。

基本上我编写了使用箭头键遍历输入元素网格的代码。所有这一切都很好。我可以使用箭头键自由移动到任何字段。当我使用向上或向下箭头时,通过选择下一个字段中的所有文本,选择功能似乎可以正常工作。 (期望的结果)

的document.getElementById(ID)。选择();

然而,当我向左或向右移动时,文本似乎使用默认浏览器功能在选择发生后向左或向右移动光标一次,迫使用户再次选择所有文本(不需要的结果)。

有没有办法在firefox中禁用它,以便正确选择我的文本?我的用户的典型工作流程是只需按箭头键然后开始输入数字......然后重复。

2 个答案:

答案 0 :(得分:1)

我会说这种行为是由keyup事件引起的。你试图阻止它吗?

编辑是的,在取消关键字事件时工作正常:http://jsfiddle.net/D6ANY/1/

答案 1 :(得分:-1)

根据您的描述,在我看来,您正在尝试实现类似效果的“电子表格”。如果是这种情况,那么您实施的行为可能会使用户感到困惑。例如在电子表格中,选项随每个单元格的箭头键移动但如果您需要编辑单元格,则需要按Enter键。这使它可编辑,然后再次按Enter键将使其成为只读