最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - How to capture cmd + enter event in jquery - Stack Overflow

programmeradmin0浏览0评论

I need to determine when a user presses cmd+enter after typing a text into a textarea. I'm using jquery.

Here's what I tried:

<textarea id="checkMetaKey"></textarea>
<div id="display"></div>

$( "#checkMetaKey" ).keyup(function( event ) {
  $( "#display" ).text(event.metaKey + " " + event.keyCode);
});

JSFiddle: /

I would expect that to display "true 13" when cmd+enter is clicked. It's not the case however.

The only way I can get metaKey to be true is when I click CMD only or CMD+ALT or CMD+CTRL.

How do I capture a CMD+ENTER event?

Similar functionality seems to be working when I try it on Facebook, I'm able to submit message text using CMD+ENTER.

I need to determine when a user presses cmd+enter after typing a text into a textarea. I'm using jquery.

Here's what I tried:

<textarea id="checkMetaKey"></textarea>
<div id="display"></div>

$( "#checkMetaKey" ).keyup(function( event ) {
  $( "#display" ).text(event.metaKey + " " + event.keyCode);
});

JSFiddle: http://jsfiddle.net/WQG2b/

I would expect that to display "true 13" when cmd+enter is clicked. It's not the case however.

The only way I can get metaKey to be true is when I click CMD only or CMD+ALT or CMD+CTRL.

How do I capture a CMD+ENTER event?

Similar functionality seems to be working when I try it on Facebook, I'm able to submit message text using CMD+ENTER.

Share Improve this question asked Dec 26, 2013 at 11:06 vrepsysvrepsys 2,2134 gold badges27 silver badges39 bronze badges 1
  • Try use keypress, not keyup – Andrew Commented Dec 26, 2013 at 11:12
Add a comment  | 

1 Answer 1

Reset to default 21

Use keydown. Also you should compare event.keyCode == 13

$("#checkMetaKey").keydown(function (event) {
    $("#display").text((event.metaKey || event.ctrlKey) && event.keyCode == 13);
});

$("#checkMetaKey").keydown(function (event) {
    $("#display").text((event.metaKey || event.ctrlKey) &&  event.keyCode == 13);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<textarea id="checkMetaKey"></textarea>
<div id="display"></div>

发布评论

评论列表(0)

  1. 暂无评论