js實現控制音樂播放


js實現控制音樂播放

js實現控制音樂播放其實很簡單,但是第一次去做可能會遇到一點點小問題。

比如說我自己,第一次想實現一個播放器效果,然后在網上搜尋半天照着自己的理解寫下如下代碼:

 <!DOCTYPE html>
 <html>
  <head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width,initial-scale=1.0" />
  <meta http-equiv="X-UA-Compatible" content="ie=edge" />
  <title></title>
  <script type="text/javascript">
  var mp3 = document.getElementById("music");
  function start() {
  mp3.play();
  }
 
  function stop() {
  mp3.pause();
  }
  </script>
  </head>
  <body>
  <video id="music" controls="controls" src="剛好遇見你.mp3">
 
  </video>
  <input type="button" id="" value="開始" onclick="start()" />
  <input type="button" id="" value="停止" onclick="stop()" />
  </body>
 </html>

我自己感覺是沒有任何問題的,然而事情總是超乎我的意料之外,卻又在情理之中。可能是因為js學的太淺了,對js的認知度太低,可以說幾乎不懂吧。

這時候Ctrl+S保存,然后Ctrl+R打開瀏覽器一運行,欸嘿,沒反應!然后又打開控制台,看到幾行紅色,說是什么什么是錯誤。如圖:

 

 

咱也看不懂,於是乎就復制到瀏覽器去搜一下。

搜到的結果也是五花八門,並沒有我需要的。

然后又自己思考一番。

先在方法外用console.log(mp3);輸出這個變量。

再次打開瀏覽器按下F12顯示null,感覺應該也沒問題,畢竟是mp3音頻文件。

然后又在方法內用console.log(mp3);輸出這個變量,結果在瀏覽器控制台里面什么也沒有顯示,這時候就是問題所在了。

可能是變量范圍的問題吧!咱也不懂!

於是乎又打開瀏覽器搜索一番,似懂非懂,大致意思就是說:方法內獲取不到方法外的變量,方法內需要調用的變量最好就在方法內寫。

但是我印象里好像又有全局變量這種東西,害,咱也不懂!當個規律記下吧!

最后實現效果的代碼如下:

 <!DOCTYPE html>
 <html>
  <head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width,initial-scale=1.0" />
  <meta http-equiv="X-UA-Compatible" content="ie=edge" />
  <title></title>
  <script type="text/javascript">
  function start() {
  var mp3 = document.getElementById("music");
  mp3.play();
    console.log(mp3);//null
  }
  function stop() {
  var mp3 = document.getElementById("music");
  mp3.pause();
                 console.log(mp3);//null
  }
  </script>
  </head>
 
  <body>
  <video id="music" controls="controls" src="剛好遇見你.mp3">
 
  </video>
  <input type="button" id="" value="開始" onclick="start()" />
  <input type="button" id="" value="停止" onclick="stop()" />
  </body>
 </html>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM