0

我正在尝试使用下面的代码创建一个播放列表,但我似乎遇到了一些错误。Firebug 说这play()不是一个函数。请帮助我花了半天的时间试图找到解决方案。这是我的代码:

<head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <script>     

         var current, playlist;
         current = 0;
         function() {
             current++;
             var songs = Array("en_ra1.mp3", "en_ra2.mp3", "en_ra3.mp3", "en_ra0.mp3");
             playlist = songs.length;
             if (current == playlist) {
               //do nothing or stop
             } else {
               this.playOptions = document.getElementById("audio").src = songs[current];
               this.playOptions.play();
             }
         }
  </script>
  </head>
<body>
<audio id="audio" onended="loadplaylist()" src="ny_option1.mp3"  controls  ></audio>

注意:当我包含自动播放属性时,尽管在萤火虫控制台中显示错误,但它工作得很好。

4

1 回答 1

2

我没有看到你在哪里声明loadplaylist函数,大概是一个错字

在你的函数中,你设置this.playOptions为从数组返回的字符串,而不是播放器,我认为你的函数应该是这样的:

 function loadplaylist() {
         current++;
         var songs = Array("en_ra1.mp3", "en_ra2.mp3", "en_ra3.mp3", "en_ra0.mp3");
         playlist = songs.length;
         if (current == playlist) {
           //do nothing or stop
         } else {
           this.playOptions = document.getElementById("audio");
           this.playOptions.src = songs[current];
           this.playOptions.play();
         }
     }
于 2013-06-20T05:44:55.847 回答