欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript實(shí)現(xiàn)通過鍵盤彈鋼琴的效果實(shí)例代碼

 更新時(shí)間:2024年03月12日 11:44:15   作者:shan33__  
這篇文章主要給大家介紹了關(guān)于JavaScript實(shí)現(xiàn)通過鍵盤彈鋼琴效果的相關(guān)資料,通過JS代碼實(shí)現(xiàn)了鋼琴鍵盤的交互效果,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

本片文章通過觸發(fā)鍵盤事件來觸發(fā)對(duì)應(yīng)的音樂,而且給頁面添加了漸變的active類名,通過觸發(fā)不同的鼠標(biāo)事件,然后active類移動(dòng)來實(shí)現(xiàn)按下鋼琴鍵的視覺效果。

關(guān)鍵代碼:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
            list-style: none;
        }

        #box {
            margin: 100px auto;
            width: 900px;
            height: 500px;
            position: relative;
            background: url(./keys.png) no-repeat;
            background-size: contain;
        }

        li {
            width: 100px;
            height: 440px;
            float: left;
        }

        .active {
            background: linear-gradient(to bottom, #ffffff, #333);
            opacity: 0.5;
        }
    </style>
</head>

<body>
    <div id="box">
        <ul>
            <li class="active"></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
        </ul>
    </div>
    <script>
        // 思路:給li遍歷上鍵盤事件,每個(gè)不同的li觸發(fā)不同的音樂,再通過css添加上漸隱的效果。
        var lis = document.querySelectorAll('li');
        var box = document.querySelector('#box');
        // console.log(box, lis);
        document.addEventListener('keydown', function (e) {
            e = e || window.event;
            var k = e.key;
            if (k >= '1' && k <= '9') {
                var audio = new Audio(`./鋼琴9鍵-mp3/d${k}.mp3`);
                audio.play();
                for (var i = 0; i < lis.length; i++) {
                    lis[i].classList.remove('active');
                }
                lis[k - 1].classList.add('active');
            }
        })
    </script>
</body>

</html>

頁面效果:

總結(jié) 

到此這篇關(guān)于JavaScript實(shí)現(xiàn)通過鍵盤彈鋼琴效果的文章就介紹到這了,更多相關(guān)JS通過鍵盤彈鋼琴內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • js實(shí)現(xiàn)微博發(fā)布小功能

    js實(shí)現(xiàn)微博發(fā)布小功能

    本篇文章主要介紹了javascript實(shí)現(xiàn)微博發(fā)布小功能的示例代碼,具有一定的參考價(jià)值,下面跟著小編一起來看下吧
    2017-01-01
  • js?select支持手動(dòng)輸入功能實(shí)現(xiàn)代碼

    js?select支持手動(dòng)輸入功能實(shí)現(xiàn)代碼

    這篇文章主要介紹了js?select支持手動(dòng)輸入實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2023-05-05
  • JavaScript代理模式原理與用法實(shí)例詳解

    JavaScript代理模式原理與用法實(shí)例詳解

    這篇文章主要介紹了JavaScript代理模式原理與用法,結(jié)合實(shí)例形式詳細(xì)分析了JavaScript代理模式基本概念、原理、用法與操作注意事項(xiàng),需要的朋友可以參考下
    2020-03-03
  • JavaScript中的this關(guān)鍵字用法詳解

    JavaScript中的this關(guān)鍵字用法詳解

    在編寫JavaScript應(yīng)用的時(shí)候,我們經(jīng)常會(huì)使用this關(guān)鍵字。那么this關(guān)鍵字究竟是怎樣工作的,它的設(shè)計(jì)有哪些好的地方,有哪些不好的地方,本文帶大家全面系統(tǒng)地認(rèn)識(shí)這個(gè)老朋友,感興趣的小伙伴可以借鑒閱讀
    2023-05-05
  • JavaScript判斷前綴、后綴是否是空格的方法

    JavaScript判斷前綴、后綴是否是空格的方法

    這篇文章主要介紹了JavaScript判斷前綴、后綴是否是空格的方法,涉及javascript操作字符串的正則替換、判斷與屬性操作技巧,需要的朋友可以參考下
    2015-04-04
  • 原生js添加節(jié)點(diǎn)appendChild、insertBefore方式

    原生js添加節(jié)點(diǎn)appendChild、insertBefore方式

    這篇文章主要介紹了原生js添加節(jié)點(diǎn)appendChild、insertBefore方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • js數(shù)組與字符串的相互轉(zhuǎn)換方法

    js數(shù)組與字符串的相互轉(zhuǎn)換方法

    這篇文章主要介紹了js數(shù)組與字符串的相互轉(zhuǎn)換方法,是js中常用的技巧,需要的朋友可以參考下
    2014-07-07
  • 詳解JavaScript中的屬性和特性

    詳解JavaScript中的屬性和特性

    本文對(duì)JavaScript中對(duì)象的本質(zhì)、對(duì)象與類的關(guān)系、對(duì)象與引用類型的關(guān)系;對(duì)象屬性如何進(jìn)行分類;屬性中特性進(jìn)行介紹。感興趣的朋友可以看下
    2016-12-12
  • 微信小程序?qū)崿F(xiàn)播放音頻

    微信小程序?qū)崿F(xiàn)播放音頻

    這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)播放音頻,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • 總結(jié)Javascript中數(shù)組各種去重的方法

    總結(jié)Javascript中數(shù)組各種去重的方法

    相信大家都知道網(wǎng)上關(guān)于Javascript中數(shù)組去重的方法很多,這篇文章給大家總結(jié)Javascript中數(shù)組各種去重的方法,相信本文對(duì)大家學(xué)習(xí)和使用Javascript具有一定的參考借鑒價(jià)值,有需要的下面來一起看看。
    2016-10-10

最新評(píng)論