8

キーボードから HTML フォームに入力されたすべての文字に対してサウンドを再生する事前定義された方法があるかどうかを知っている人はいますか?

例: テキスト フィールドに Y と入力すると、Web サイトでは Y と表示されます。

または、それを行うための最良の方法は何ですか?

4

3 に答える 3

20

サウンドを再生するのは簡単で、キー プレスにハンドラーを追加するのは簡単ですが、2 つの操作をリンクする定義済みの方法がないため、独自のコードを入力する必要があります。

1) キーを押すと動作する

document.onkeydown = function() {
    ...

2 ) 音を鳴らす

オーディオ要素を追加します:

<audio id=alarm>
    <source src=sound/zbluejay.wav>
</audio>

そして、それを実行します

document.getElementById('alarm').play();

たとえば、キーコードをサウンド要素 ID にリンクするマップを作成できます。

var sounds = {
   88 : 'alarm', // key 'x'
   ...

};
document.onkeydown = function(e) {
    var soundId = sounds[e.keyCode];
    if (soundId) document.getElementById(soundId).play();
    else console.log("key not mapped : code is", e.keyCode);
}

Yoy はここでキーコードを見つけることができます

于 2012-09-25T07:47:24.883 に答える
2

すべての文字のサウンド ファイルを用意し、JavaScript を使用してボタン プレス イベントで再生する必要があります。

于 2012-09-25T07:45:30.030 に答える