前言
本文為「JavaScript 30」教學影片的學習筆記。
目標
製作出可以用鍵盤敲出特定樂器聲的效果。
筆記
在 keydown
事件後觸發 playSound()
方法。
1 | window.addEventListener('keydown', playSound); |
addEventListener()
方法會為元素添加事件。
選擇所有樣式為 key
的元素。
1 | const keys = document.querySelectorAll('.key'); |
querySelectorAll()
方法會找到所有匹配的元素並返回類陣列。
讓 keys
類陣列中的每一個元素在 transitionend
事件後觸發 removeTransition()
方法。
1 | keys.forEach(key => key.addEventListener('transitionend', removeTransition)); |
forEach()
會將類陣列內的每個元素皆傳入並執行給定的方法一次。transitionend
事件會在CSS transition
結束後觸發。
設定一個 playSound()
方法。
1 | function playSound(e) { |
e
是用來傳入event
物件的參數。- 用反引號(``)圍住的語法為 ES 6 的新語法--樣板字串。
- 占位符
${expression}
可以實現多行字串及字符串插値。 return
會返回undefined
。keyCode
屬性是onkeypress
等事件觸發的鍵盤代碼。
設定一個 removeTransition()
的方法。
1 | function removeTransition(e) { |