2017-07-16 72 views
-5

当我在我的textarea中按任意键时,它看起来像e.keycode不能正常工作。但是当我按下我的textarea中的任何键时,它总是会触发。请帮忙吗?为什么e.keyCode在我的textarea中没有收到“{”?

function d(e) { 
 
    var key = (e.keyCode); 
 
    if (key == 229) { 
 
    alert("hello"); 
 
    return false; 
 
    } 
 
}
<textarea id="msg" onkeyup="d(event)"> 
 
</textarea>

我不工作在PC上。我在Android浏览器上测试这个。

+2

https://stackoverflow.com/questions/4471582/javascript-keycode-vs-which – tom10271

+1

@EvgenyKolyakov:不,它是'e.which',但鉴于OP引用的症状,这并不是说他们使用了错误的属性(但不清楚*是什么错误)。 –

+0

你忘记了} –

回答

1

219是需要使用

function d(e) { 
 
    var key = (e.keyCode); 
 

 
    if (key == 219) { 
 
    alert("hello"); 
 
    return false; 
 
    } 
 
}
<textarea id="msg" onkeyup="d(event)"> 
 
</textarea>

+0

其中没有说明OP描述的症状。 –

-1

{该键码是219键代码。有些浏览器使用keycode,有些使用which。还有charCode

function d(e){ 
 
    var key = e.which || e.keyCode || e.charCode || 0; 
 
    if (key == 219){ 
 
     alert("hello"); 
 
     return false; 
 
    } 
 
}
<textarea id="msg" onkeyup="d(event)"> 
 
</textarea>

+0

其中没有一个说明OP描述的症状。 –

+0

@ T.J.Crowder是不是他使用错误的键码{'? –

+0

也许,但问题清楚地表明它总是**触发器,而不是它从不触发。目前的形式无法回答这个问题。 –

-1

试试这个

<!DOCTYPE html> 
<html> 
<body> 

<input type="text" size="40" onkeypress="myFunction(event)"> 


<script> 
function myFunction(event) { 
    var x = event.which || event.keyCode; 
    if(x == '122'){ alert('hello');} 
} 
</script> 

</body> 
</html> 
+0

z的Unicode是122 – Nihal

+0

为什么?你改变了什么?你为什么改变它?代码转储不是有用的*答案。另外,上述内容中没有任何内容说明OP所描述的症状。 –

相关问题