實做:使用鍵盤按鈕觸發樂器效果的頁面
學習重點
- 自定義 HTML 資料屬性
- 使用鍵盤觸發 audio
- 利用 javascript 控制 CSS
解說
- 為了按下鍵盤後,能夠對應要發出的音效,必須在每個元素上綁定 keyCode,利用自定義資料屬性的方式在div和audio綁定
1 | data-key 是自訂的屬性 |
- 加入監聽事件:keydown ,並使用querySelector 來獲取被按下的元素與keyCode
1 | //keydown 事件會把鍵盤的訊息傳入,包含keyCode , keyName等等 |
- 播放音效後綁定新的class給被按下的元素
1 | var audio = document.getElementById("video"); |
- 最後音效結束後,必須讓效果恢復原狀:
當我們按下元素後,元素會被放大,完成後就可以利用 transitionened 事件恢復原狀!
1 | key.addEventListener("transitionend",function(e)=>{ |
補充
transitionened 補充
什麼是自定義tag?data-* Attributes
這裡可以查看鍵盤按鍵對應的keyCode