我正在通過 MDN 檔案學習 javascript。他們有一個關于功能主題的示例,顯然我無法理解。
const textBox = document.querySelector("#textBox");
const output = document.querySelector("#output");
textBox.addEventListener('keydown', (event) => output.textContent = `You pressed "${event.key}".`);
我已經閱讀了一些關于按鍵功能的檔案,我認為它應該為輸入的每個字符回傳一些值(如果我錯了,請糾正我);但在 MDN 上的示例中,它僅在我按回車鍵時回傳回車,當我按退格鍵時回傳退格(而輸入框沒有其他字符)。順便說一句,我正在移動設備上閱讀此示例。
uj5u.com熱心網友回復:
你對keydown事件的看法幾乎是正確的。#textBox當輸入 HTML 元素被激活或者它能夠接收事件(具有id的 HTML 元素)時,它應該在每次按下按鍵時呼叫 callBack 函式。這意味著如果#textBox元素沒有被選中/激活,它不會監聽任何'keydown'事件,因此它不會呼叫callBack函式:(event) => output.textContent = You pressed "${event.key}".
keydown是#textBox元素通過addEventListener()方法監聽的事件。更清楚地說,該addEventListener()方法設定了一個函式,只要將指定的事件傳遞到目標,就會呼叫該函式。在這種情況下,目標是帶有#textBoxid 的 html 元素。
簡而言之,您撰寫的代碼會將keydown事件添加到輸入元素,并(event) => output.textContent = You pressed "${event.key}".在事件發生時呼叫該函式。
您可以在 MDN 上閱讀有關addEventListener()的更多資訊。
uj5u.com熱心網友回復:
只要您添加正確的html,似乎就可以作業。
const textBox = document.querySelector("#textBox");
const output = document.querySelector("#output");
textBox.addEventListener('keydown', (event) => output.textContent = `You pressed "${event.key}".`);
<input id="textBox">
<div id="output"></div>
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/523712.html
下一篇:回傳函式中的無值
