首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在这首随机歌曲的末尾,用另一首重新开始

在这首随机歌曲的末尾,用另一首重新开始
EN

Stack Overflow用户
提问于 2020-11-16 17:15:42
回答 2查看 39关注 0票数 0

我创建了一个脚本,播放一首随机的歌曲,但当歌曲结束时,显然它就会停止。我真的不知道如何在歌曲的结尾播放另一个随机的声音。

代码语言:javascript
复制
function getRandomSounds() {
        var sounds = new Array();
        sounds[0]="ms1/7_58_LEFT.mp3";
        sounds[1]="ms1/6_15.mp3";
        sounds[2]="ms1/7_58_RIGHT.mp3";
        var randomNum = Math.floor(Math.random()*sounds.length);
        document.getElementById("myaudio").src=sounds[randomNum];
        
         }
        getRandomSounds();
EN

回答 2

Stack Overflow用户

发布于 2020-11-16 17:25:26

也许有更简单的方法来实现这一点,但在您已有的代码片段之上构建,我会:

代码语言:javascript
复制
function getRandomSounds() {
  var sounds = new Array();
  sounds[0] = "ms1/7_58_LEFT.mp3";
  sounds[1] = "ms1/6_15.mp3";
  sounds[2] = "ms1/7_58_RIGHT.mp3";
  var randomNum = Math.floor(Math.random() * sounds.length);
  document.getElementById("myaudio").src = sounds[randomNum];

}

getRandomSounds();

document.getElementById("myaudio").addEventListener('ended', (event) => {
  getRandomSounds();
});
票数 1
EN

Stack Overflow用户

发布于 2020-11-16 17:34:00

您需要使用Web API而不是设置参考值!

使用Element.setAttribute(),它将搜索DOM树。

如果属性已经存在,那么浏览器将更改DOM树节点属性!

我尝试了两种方法来更改DOM树节点属性,您可以查看我在JSBin上的示例,打开开发工具(F12),因为您可以看到使用setAttribute方法更改src属性是成功的。

代码语言:javascript
复制
var foo = document.getElementById('foo');

console.log(foo.src)
foo.src = "ms1/7_58_LEFT.mp3"
console.log(foo.src)
      
foo.setAttribute('src', '"ms1/7_58_LEFT.mp3');

这是MDN文档,希望能对您有所帮助:)

https://developer.mozilla.org/en-US/docs/Web/API/Element/setAttribute

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64855284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档