此小作品是當使用者按下鍵盤按鈕後,就會發出一個聲音,同時按鈕也會有簡單的特效。
Demo
window.addEventListener('keydown', function(){});
此小作品使用的是:
屬性:
方法:
transitionend 事件會在 CSS 的 transition 結束後觸發
const keys = document.querySelectorAll('.key');
keys.forEach(key => key.addEventListener('transitionend', function(){}));
width,height,opacity,background-position,word-spacing,vertical-align,z-index
linear,ease,ease-in,ease-out,ease-in-out,cubic-bezier(n,n,n,n)
透過 propertyName 屬性,可以取得 transition-property
雖然 forEach 在現代的瀏覽器可以搭配 NodeList 使用,但在舊的瀏覽器可能失效,詳見以下連結:
https://developer.mozilla.org/zh-TW/docs/Web/API/NodeList
然後此作品中的 document.querySelectorAll() 取得的是一個 nodeList,所以作者透過 ES6 的語法 Array.from 產生一個新的陣列,並用此陣列做 forEach。
全部練習的程式碼都在此連結:
https://github.com/a90100/JavaScript30