javascript - 使用 jQuery 反转箭头键

标签 javascript jquery

我正在使用以下 css 来反转文本区域:

.reverse
{
  /* reverse the text */
  transform: scale(-1, 1);
  -webkit-transform: scale(-1, 1);
  -moz-transform: scale(-1, 1); 
  -o-transform: scale(-1, 1); 
  transform: scale(-1, 1);
}

这很好用,除了一件事:使用箭头键在文本中导航现在是向后的。我想反转箭头键的方向,以便它们按预期工作。这是我尝试过的:

$(document).ready(function() {

  // flag which indicates when the key event has been overridden
  var keyEventOverridden = false;

  // reverse the arrow keys for the reverse textbox
  $(".reverse").bind("keydown keyup", function(event) {

    // allow the default behavior if the key has already been overridden
    if (keyEventOverridden)
      return true;

    // get the keyCode
    var keyCode = event.keyCode || event.which;

    // create the replacement event
    var replacementEvent = $.Event(event.type);

    // trigger the right key if the left key was pressed down
    if (keyCode === 37)
    {
      replacementEvent.keyCode = 39;
      replacementEvent.which = 39;
    }
    // trigger the left key if the right key was pressed down
    else if (keyCode === 39)
    {
      replacementEvent.keyCode = 37;
      replacementEvent.which = 37;
    }
    else
    {
      // allow the default behavior
      return true;
    }

    // prevent the key event from being overridden again
    keyEventOverridden = true;

    // trigger the replacement event
    $(this).trigger(replacementEvent);

    // allow the key event to be overridden again
    keyEventOverridden = false;

    // prevent the default behavior
    return false;
  });
});

此脚本无效。有人知道为什么吗?

最佳答案

好吧,无法让它按照您最初设计的方式工作(即通过触发伪事件),浏览器只是不允许操纵事件。

我已经做了一个可能对你有用的解决方法。

查看演示:http://jsfiddle.net/pL3Yj/6/

解决方案涉及覆盖左/右箭头并自己移动插入符号。

关于javascript - 使用 jQuery 反转箭头键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12660403/

相关文章:

javascript - 允许您按键和值查找的结构的名称是什么?

php - Session_id 在页面源代码中可见,可以吗?

jquery - 如何让 css 元素除了最初之外还有过渡?

jquery - 如何给第一行数据加粗字体?

javascript - 使用 Jquery Ajax 方法时不允许方法错误

javascript - 电话号码验证正则表达式

javascript - 使用 JS 从列表中获取选定的项目

jquery - 如何使用引导 Accordion 折叠两个 Accordion

javascript - yii2 ajax 请求重定向不起作用

javascript - 如何修复 Bootstrap 样式无法与 Jquery 对应正常工作?