- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我遇到了 Firefox keydown
行为,因为在没有聚焦于特定字段的情况下按下 Enter 键(实际上是任何键)不会触发 keydown
事件只会触发`按键事件。
这可能会非常令人困惑,因为 keydown
和 keyup
事件使用 JavaScript 按键代码,而 keypress
使用 ASCII 代码。幸运的是,13(输入/返回)是两者通用的。
在这种情况下,Firefox 使用 keypress
是否有任何已知原因?有什么好处?
一旦建立了这一点,IE8 就会抛出一个愚蠢的问题,因为它不允许 preventDefault
要求,而是 returnValue = false
来自另一个 Stack Overflow 帖子的以下片段已被证明非常有用:
event.preventDefault ? event.preventDefault() : event.returnValue = false;
在寻找解决这些问题的过程中,我一直对 event.keycode
与 event.which
感到困惑。也就是说,我使用类似于以下的 switch 语句做错了:
$("#class_Name").bind("keydown", function(event){
// do not test input if field controls used
switch(event.which){
case 13:
//enter key
event.preventDefault ? event.preventDefault() : event.returnValue = false;
break;
}
$("body").keypress(function(event){
// stop inadvertant form submission
if (event.keycode == "13"){
event.preventDefault ? event.preventDefault() : event.returnValue = false;
}
});
最佳答案
一些浏览器使用keyCode
,其他浏览器使用which
。但对于 jQuery,这是标准化的,因此您不必考虑这一点。您可以选择您喜欢的一个。
关于javascript - event.keycode 与 event.which,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12172646/
所以我遇到了一些类型不匹配的奇怪情况。总体想法是我正在创建一个游戏,玩家可以在其中定义自己的移动键绑定(bind)、按钮等。 我从一个标准的键事件监听器开始,然后将其馈送到键处理程序中 import
我已经在 SO 上检查了其他问题,但是他们没有回答我的问题。我只想捕获某些 keyCode 并将其替换为另一个。我正在处理字符,而不是空格,我不需要松散焦点等。 下面是我的代码。但是您可以用您的键码替
var keycode = window.event.keycode; game.keyDown(keycode); 此代码在 Chrome、IE、Safari 上运行良好,但当我在 Firefox
var key_code = 65; 结果应该是 character = "Esc"; 我想转换键盘上的所有按键。我的演示在这里: window.onload = function () { var
我目前正在学习 Java,并正在使用 Java FX 进行事件驱动编程。该程序制作一个圆圈,并通过几种不同的方法(按钮、鼠标按钮、向上和向下箭头)增加其大小。 按钮和鼠标单击工作正常,但向上和向下箭头
谁能告诉我如何在检查两个键码{shiftkey + e.keyCode = 37或38或39或40}的组合后在keyup上触发jQuery事件? 我想做一些像下面这样的事情:让我们有一个 p 标签,其
我制作了一个 onkeydown 函数,它水平运行 li 元素 block ,它运行完美,但我需要当第一个和最后一个 li block 处于焦点时,左右键应该被禁用。 有人能建议一个正确的方法吗?提前
我怀疑这是由于我对 keyCode 信息如何传递缺乏了解,但我不知道如何进行这项工作... 我需要从 keydown 事件中获取键码。我可以轻松地完成以下操作: document.getElement
在我的项目中,我尝试从发送 writeInt(e.getKeyCode()) 的另一台计算机接收 dataInputStream,即 readInt() 到这台计算机,但是当我收到 keyCode 时
KeyEvent.getKeyCode()可以返回多少个code? KeyEvent.getKeyCode()返回的代码范围是多少? javadoc for KeyEvent 上列出了 key 代码吗
首先,看我的例子:http://jsfiddle.net/Davood/gkeAM/ 我想在点击链接时获取 keyCode 。 我想发现当点击链接时,是否按下了 ctrl 键? 提前致谢 最佳答案 $
我需要能够读取一个字符并获取与其语言和键盘布局相关的键。 我知道如何看待文化背景和语言。但是我怎样才能用英文输入像'S'这样的字母并知道它在键盘上的键是什么?或者对于更难的问题,我怎样才能知道字母 '
无论键盘和操作系统的语言和文化如何,/(正斜杠)符号的 javascript 键码是什么?在英语键盘中,正斜杠位于与数字键分开的键中,其键码为 191。但是在西类牙语键盘中,该字符与数字 7 位于同一
我在 JavaScript 方面仍处于新手水平。我发现了一个困扰我的错误。 这就是 keyCode 似乎无法在移动设备(chrome)上工作的原因。我刚刚注意到移动设备不支持 keyCode。 我猜我
我需要在文本框中包含星号作为允许的条目。 无论键盘布局和语言如何,如何在 KeyDown 事件下测试此键? 忽略数字键盘,使用葡萄牙语 QWERTY 布局可以通过 Keys.Shift | 测试此键
虽然我知道由于 e.keyCode 与 e.charCode 而捕获键不是微不足道的,但我认为 jQuery 几乎能够规范化大部分那些不一致。 然而 answering this question我发
我以为这会在 Stack Overflow 上的某个地方得到解答,但我找不到。 如果我正在监听按键事件,我应该使用 .keyCode 还是 .which 来确定是否按下了 Enter 键? 我一直在做
$('body').keypress(function(event){ if(event.keyCode == 46){console.log('Delete Key Pressed')};
我有一个自动完成文本字段的ajax请求。结果被附加到div中。现在我需要做的是通过向上和向下箭头浏览结果。但是我没有从 keydown jquery 函数中获取向上和向下的键码。任何帮助都会受到赞赏。
我想知道如何更改KeyCode条件中的功能?我试图做某事,但无法进入 keyCode。 我的代码: $("body").keydown(function (e) { // left arrow
我是一名优秀的程序员,十分优秀!