最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Javascript實(shí)現(xiàn)打鼓效果

 更新時(shí)間:2021年01月29日 10:44:19   作者:,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下  
這篇文章主要為大家詳細(xì)介紹了Javascript實(shí)現(xiàn)打鼓效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了Javascript實(shí)現(xiàn)打鼓效果的具體代碼,供大家參考,具體內(nèi)容如下

按住響應(yīng)的鍵盤顯示不同的聲音

<div class="keys">
  <div data-key="65" class="key">
   <kbd>A</kbd>
   <span class="sound">clap</span>
  </div>
  <div data-key="83" class="key">
   <kbd>S</kbd>
   <span class="sound">hihat</span>
  </div>
  <div data-key="68" class="key">
   <kbd>D</kbd>
   <span class="sound">kick</span>
  </div>
  <div data-key="70" class="key">
   <kbd>F</kbd>
   <span class="sound">openhat</span>
  </div>
  <div data-key="71" class="key">
   <kbd>G</kbd>
   <span class="sound">boom</span>
  </div>
  <div data-key="72" class="key">
   <kbd>H</kbd>
   <span class="sound">ride</span>
  </div>
  <div data-key="74" class="key">
   <kbd>J</kbd>
   <span class="sound">snare</span>
  </div>
  <div data-key="75" class="key">
   
   <kbd>K</kbd>
   <span class="sound">tom</span>
  </div>
  <div data-key="76" class="key">
   <kbd>L</kbd>
   <span class="sound">tink</span>
  </div>
  </div>
 
  <audio data-key="65" src="sounds/clap.wav"></audio>
  <audio data-key="83" src="sounds/hihat.wav"></audio>
  <audio data-key="68" src="sounds/kick.wav"></audio>
  <audio data-key="70" src="sounds/openhat.wav"></audio>
  <audio data-key="71" src="sounds/boom.wav"></audio>
  <audio data-key="72" src="sounds/ride.wav"></audio>
  <audio data-key="74" src="sounds/snare.wav"></audio>
  <audio data-key="75" src="sounds/tom.wav"></audio>
  <audio data-key="76" src="sounds/tink.wav"></audio>

css部分:

html {
 font-size: 10px;
 background: url('../img/background.jpg') bottom center;
 background-size: cover;
}

body,html {
 margin: 0;
 padding: 0;
 font-family: sans-serif;
}

.keys {
 display: flex;
 flex: 1;
 min-height: 100vh;
 align-items: center;
 justify-content: center;
}

.key {
 border: .4rem solid black;
 border-radius: .5rem;
 margin: 1rem;
 font-size: 1.5rem;
 padding: 1rem .5rem;
 transition: all .07s ease;
 width: 10rem;
 text-align: center;
 color: white;
 background: rgba(0,0,0,0.4);
 text-shadow: 0 0 .5rem black;
}

.playing {
 transform: scale(1.1);
 border-color: #ffc600;
 box-shadow: 0 0 1rem #ffc600;
}

kbd {
 display: block;
 font-size: 4rem;
}

.sound {
 font-size: 1.2rem;
 text-transform: uppercase;
 letter-spacing: .1rem;
 color: #ffc600;
}

第一步實(shí)現(xiàn)按下鍵盤實(shí)現(xiàn),聲音的播放

window.addEventListener("keydown",function(e){
   console.log(e.keyCode);
   const audio=document.querySelector(`audio[data-key="${e.keyCode}"]`);
   const key=document.querySelector(`div[data-key="${e.keyCode}"]`)
   //每次播放完初始化
    if (!audio) return;
    audio.currentTime = 0;
    audio.play();

     key.classList.add('playing');

     setTimeout(function(){
     key.classList.remove('playing');
     },70);
    
    //按鍵之后移出效果
})

keyCode對(duì)應(yīng)圖

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • ko knockoutjs動(dòng)態(tài)屬性綁定技巧應(yīng)用

    ko knockoutjs動(dòng)態(tài)屬性綁定技巧應(yīng)用

    ko的動(dòng)態(tài)屬性是指,ViewModel不確定的屬性,而后期卻需要的屬性,本文將詳細(xì)介紹,需要的朋友參考下
    2012-11-11
  • JavaScript自學(xué)筆記(必看篇)

    JavaScript自學(xué)筆記(必看篇)

    下面小編就為大家?guī)?lái)一篇JavaScript自學(xué)筆記(必看篇)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-06-06
  • input點(diǎn)擊后placeholder中的提示消息消失

    input點(diǎn)擊后placeholder中的提示消息消失

    placeholder屬性是HTML5 中為input添加的。在input上提供一個(gè)占位符,文字形式展示輸入字段預(yù)期值的提示信息(hint),該字段會(huì)在輸入為空時(shí)顯示
    2016-01-01
  • bootstrap精簡(jiǎn)教程_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    bootstrap精簡(jiǎn)教程_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    這篇文章主要介紹了bootstrap精簡(jiǎn)教程,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-07-07
  • JS判斷空對(duì)象的幾個(gè)方法大盤點(diǎn)

    JS判斷空對(duì)象的幾個(gè)方法大盤點(diǎn)

    在做數(shù)據(jù)交互的時(shí)候,我們經(jīng)常需要判斷數(shù)據(jù)或者對(duì)象是不是為空,避免當(dāng)接口異常時(shí)候前端頁(yè)面崩潰,下面這篇文章主要給大家介紹了關(guān)于JS判斷空對(duì)象的幾個(gè)方法,需要的朋友可以參考下
    2022-02-02
  • 頁(yè)面定時(shí)刷新(1秒刷新一次)

    頁(yè)面定時(shí)刷新(1秒刷新一次)

    頁(yè)面定時(shí)刷新的示例想必大家也見到不少,在本文將為大家介紹的是,如何實(shí)現(xiàn)1秒刷新一次,感興趣的朋友可以了解下本文
    2013-11-11
  • d3.js實(shí)現(xiàn)自定義多y軸折線圖的示例代碼

    d3.js實(shí)現(xiàn)自定義多y軸折線圖的示例代碼

    本篇文章主要介紹了d3.js實(shí)現(xiàn)自定義多y軸折線圖的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • JS實(shí)現(xiàn)仿中關(guān)村論壇評(píng)分后彈出提示效果的方法

    JS實(shí)現(xiàn)仿中關(guān)村論壇評(píng)分后彈出提示效果的方法

    這篇文章主要介紹了JS實(shí)現(xiàn)仿中關(guān)村論壇評(píng)分后彈出提示效果的方法,實(shí)例分析了javascript彈出特效的css與提示框的具體實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-02-02
  • js前端獲取用戶位置及ip屬地信息

    js前端獲取用戶位置及ip屬地信息

    這篇文章主要為大家介紹了js前端獲取用戶位置及ip屬地信息示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • Bootstrap中data-target 到底是什么

    Bootstrap中data-target 到底是什么

    這篇文章主要介紹了Bootstrap中data-target 到底是什么的相關(guān)資料,我目前理解到在bootstrap中data-target,data-toggle等屬性主要有兩種作用,具體哪兩種作用,大家通過(guò)本文詳細(xì)了解下
    2017-02-02

最新評(píng)論

鞍山市| 全州县| 繁峙县| 儋州市| 高陵县| 闽清县| 陆良县| 广东省| 富顺县| 元氏县| 内江市| 崇礼县| 云南省| 高尔夫| 邵东县| 枣强县| 浦县| 呼图壁县| 海兴县| 揭西县| 五原县| 水富县| 井冈山市| 阆中市| 马尔康县| 阜南县| 仁怀市| 黔西县| 云浮市| 三亚市| 临清市| 贵阳市| 华容县| 定南县| 通州市| 宁陵县| 桂平市| 瑞昌市| 宁河县| 文安县| 三台县|