Ctrlキーを押しながらTEXTAREAにjQueryを入力

hotkeys html javascript jquery
Ctrlキーを押しながらTEXTAREAにjQueryを入力

カーソルが* TEXTAREA 内にあるときに何かをトリガーする方法
Ctrl+Enter is pressed? Using *jQuery
. Thanks

  79  20


ベストアンサー

実際にこれはトリックを行い、すべてのブラウザで動作します。

if((event.keyCode == 10 || event.keyCode == 13)
http://jsfiddle.net/ZLyMJ/10/[jsフィドル]へのリンク]

126


https://developer.mozilla.org/En/DOM/Event.ctrlKey [event.ctrlKey]フラグを使用して、次のような[.kbd]#Ctrl#キーが押されているかどうかを確認できます。

$('#textareaId').keydown(function (e) {

  if (e.ctrlKey && e.keyCode == 13) {
    // Ctrl-Enter pressed
  }
});

上記のスニペットhttp://jsbin.com/ovowu[here]を確認してください。

112


ユニバーサルソリューション

OS Xもサポートしています。

if((e.ctrlKey || e.metaKey)

49


私は他の人の答えが不完全であるか、またはクロスブラウザ互換ではないことを見つけました。

このコードはGoogle Chromeで動作します。

$(function(){$(document).on( "keydown"、 "#textareaId"、function(e){if((e.keyCode == 10 || e.keyCode == 13)

4


これは、次のように単純だが柔軟性のあるJQueryプラグインに拡張できます。

$ .fn.enterKey = function(fnc、mod){return this.each(function(){$(this).keypress(function(ev){var keycode =(ev.keyCode?) ev.keyCode:ev.which); if((keycode == '13' || keycode == '10')

このように

$( 'textarea')。enterKey(function(){$(this).closest( 'form')。submit();}、 'ctrl')

ユーザーがフォームのテキストエリアにフォーカスを置いてctrl-enterを押したときにフォームを送信する必要があります。

(https://stackoverflow.com/a/9964945/1017546のおかげで)

2


[.kbd]#Ctrl#が押されたときに最初にフラグを設定する必要があります。これはキーダウンで行います。 それならあなたはエンターのキーダウンをチェックしなければなりません。 [.kbd]#Ctrl#のキーアップが表示されたら、フラグを設定解除します。

0


$( 'my_text_area')。focus(関数{set_focus_flag});

//ctrl on key down set flag

//enter on key down = check focus flag, check ctrl flag

0


ゲームに少し遅れるかもしれませんが、ここで私が使用しているものがあります。 カーソルの現在のターゲットであるフォームの送信も強制されます。

$(document.body).keypress(関数(e){var $ el = $(e.target); if(e.ctrlKey)

0


タイトルとURLをコピーしました