私は以下のコードスニペットをEloquent JavaScriptの章から持っています。フォームとフォームフィールドここでは、という文字列をkeydownに挿入します。JavaScriptコードは他のOSとは異なっていますか?
// Input field
<textarea></textarea>
// The following code wires up
// a <textarea> tag with an event handler that, when you press F2, inserts
// the string “Khasekhemwy” for you.
var textarea = document.querySelector('textarea');
textarea.addEventListener('keydown', function(event) {
// The key code for F2 happens to be 113
if (event.keydown == 113) {
replaceSelection(textarea, "Khasekhemwy");
event.preventDefault();
}
});
// The replaceSelection function replaces the currently selected part of a
// text field’s content with the given word and then moves the cursor after
// that word so that the user can continue typing.
function replaceSelection(field, word) {
var from = field.selectionStart, to = field.selectionEnd;
field.value = field.value.slice(0, from) + word +
field.value.slice(to);
// Put the c u r s o r after the word
field.selectionStart = field.selectionEnd = from + word.length;
}
私は、最新のブラウザを使用してMacintoshコンピュータ上だと私はそれがこのコードが上で書かれた別のOSのどちらかだか、それはコードだと感じ始めています。
注:Macintosh上で呼び出すF2 = fn + F2
あなたは、コードを誤って入力している
これは 'F *'やその他のキーを呼び出すときだけですか? – user7808407
'event.key'の値は何ですか? –
イベントにkeydown-propertyが設定されていないため、動作しません。 – Esko