.keycode与.哪个

.keycode与.哪个

我以为这会在堆栈溢出的某个地方找到答案,但我找不到。

如果我在监听按键事件,我应该使用.keyCode.which以确定是否按下了Enter键?

我一直做的事情如下:

$("#someid").keypress(function(e) {
  if (e.keyCode === 13) {
    e.preventDefault();
    // do something
  }});

但我看到的例子.which而不是.keyCode..有什么关系呢?一个比另一个更友好吗?


眼眸繁星
浏览 473回答 3
3回答

交互式爱情

一些浏览器使用keyCode,其他人使用which..如果使用jQuery,则可以可靠地使用which作为jQuery规范事物. 再来点。如果不使用jQuery,则可以这样做:var key = 'which' in e ? e.which : e.keyCode;或交替:var key = e.which || e.keyCode || 0;.这处理了这样一种可能性e.which可能是0(通过恢复0最后,使用JavaScript非常强大||操作者).

慕尼黑8549860

jQuery规范event.which取决于event.which, event.keyCode或event.charCode浏览器支持:// Add which for key eventsif ( event.which == null && (event.charCode != null || event.keyCode != null) ) {   event.which = event.charCode != null ? event.charCode : event.keyCode;}额外的好处.whichjQuery也用于鼠标单击:// Add which for click: 1 === left; 2 === middle; 3 === right// Note: button is not normalized, so don't use itif ( !event.which && event.button !== undefined ) {    event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) ));}
打开App,查看更多内容
随时随地看视频慕课网APP