【问题标题】:Javascript cross-browser input layerJavascript跨浏览器输入层
【发布时间】:2011-06-19 18:57:02
【问题描述】:

我正在制作一个广泛使用键盘的网络应用程序。我注意到内置的浏览器事件处理在不同的浏览器之间是不一致的,并且 jQuery 不能很好地规范化(例如,Firefox 发送一个 keypress 用于退格,chrome 没有)。我想知道是否有一个 javascript 库可以规范化这些特性并为键盘事件处理提供统一的接口。

【问题讨论】:

  • 我没有回答您更大的问题,但我知道建议使用“keyup”而不是“keypress”,因为缺乏跨浏览器的实现。
  • 您可能正在做一些很棒的事情,但请注意:制作一个行为方式与其他 Web 应用程序截然不同的 Web 应用程序是非常冒险的。对于像游戏这样的东西,这可能是一个的想法,因为它可能会增加兴趣和挑战。对于像银行应用程序这样的东西,它可能会引起很多混乱和挫败感。
  • @kinakuta:一般来说,您不能使用keyup 代替keypress:它们有不同的用途。 keyup 在释放键时触发,而keypress 在按下键后立即触发(并且在按住键时生成自动重复字符时可能会触发)。 keypress 是唯一可以告诉您有关所键入字符的任何可靠信息的事件; keyupkeydown 只告诉您按下/释放的物理键的代码。实际上所有主流浏览器都支持keypress,但是在实现上有一些变化:unixpapa.com/js/key.html

标签: javascript jquery input keyboard-events


【解决方案1】:

这里有一对:

http://habrahabr.ru/blogs/jquery/76424/

http://www.openjs.com/scripts/events/keyboard_shortcuts/

http://wiki.fluidproject.org/display/fluid/Keyboard+Accessibility+Plugin+API

请注意,第一个是俄语,但谷歌翻译做得很好。 translate.google.com

我没有尝试过其中任何一个,但没有看到其他人提出任何建议。希望这能给你一个起点。祝你好运!

【讨论】:

    猜你喜欢
    • 2016-06-18
    • 1970-01-01
    • 2016-08-03
    • 2012-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-04
    相关资源
    最近更新 更多