2

私はJavaScriptが初めてで、ユーザーがEnterボタンを押す前にフォーカスがどこにあったかを確認する方法があるかどうか疑問に思っていました. フォーカスに基づいて、異なる方法で処理したいと考えています。何か案は?

4

2 に答える 2

3

フォーカスに基づいて、ユーザーが入力でEnterキーを押すと、あることを行い、ユーザーが別の入力でEnterキーを押すと、別のことを行うことを意味すると思います。

私が正しければ、焦点がどこにあったかを確認する必要はありません。関数を onkeypress イベントにバインドします。

<script>
function doStuffOnEnter()
{
    var x = event.keyCode;
    if(x == 13) // if user pressed intro
    {
       //do stuff
    }
}
</script>
<input type="text" onkeypress="doStuffOnEnter()" />

上記のコードは非常に基本的なものですが、アイデアを理解するのはあなただけです。

詳細はこちら: http://www.w3schools.com/jsref/event_onkeypress.asp

于 2012-09-13T21:49:50.163 に答える
2

あなたのサイトが jQuery を使用している場合 (これは JavaScript の初心者には一般的です)、DOMElement をグローバル変数に格納してチェックすることができます。

var currentFocus = null;
$('input, textarea').focus(function() { 
    currentFocus = this; 
});

これにより、ユーザーが Enter キーを押したときに最後に「フォーカス」していた場所を知ることができます。jQuery を使用していない場合、コードは少し長くなりますが、考え方は同じです。

于 2012-09-13T21:46:20.067 に答える