html - 如何优化此随机播放列表html5音频脚本

标签 html audio random playlist

<script type="text/javascript">
function random_playlist(){
    var myrandom=Math.round(Math.random()*4);
    var soundurl='http://dummy.xy/dummy.mp3';

    if      (myrandom==0){soundurl='http://path_to.mp3';}
    else if (myrandom==1){soundurl='http://path_to.mp3';}
    else if (myrandom==2){soundurl='http://path_to.mp3';}
    else if (myrandom==3){soundurl='http://path_to.mp3';}
    else if (myrandom==4){soundurl='http://path_to.mp3';}
    console.log(soundurl);
    return soundurl;
    };
</script>

<audio id="audioplayer_id" controls="controls" loop>
<source id="source_id" src="" type="audio/mp3"/>
Your browser does not support the audio element
</audio>

<script type="text/javascript">
    var audioload = random_playlist();
    console.log(audioload);
    document.getElementById('source_id').src= audioload;
    var audioplayer_id = document.getElementById('audioplayer_id')
      audioplayer_id.volume = 0.15;
      audioplayer_id.load(); 
      audioplayer_id.play();
</script>

对我来说效果很好,但可以对其进行优化吗?

我只是从不同的来源一起破解了这个代码,似乎html5并未在音频标签中集成播放列表功能,这对我来说似乎很有趣。
打招呼

最佳答案

您可以这样缩短random_playlist函数:

function random_playlist(){
    var PATHS = ['http://path_to.mp3', 'http://path_to.mp3', 'http://path_to.mp3'];
    return PATHS[Math.floor(Math.random() * PATHS.length)];
}

或(更好但更复杂的版本):
var random_playlist = (function(){
        var PATHS = ['http://path_to.mp3', 'http://path_to.mp3', 'http://path_to.mp3'];
        return function(){
                return PATHS[Math.floor(Math.random() * PATHS.length)]
        };
}())

关于html - 如何优化此随机播放列表html5音频脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32094650/

相关文章:

html - 全屏图像防止拉伸(stretch)

audio - 如何在mp4之间复制粘贴音轨

java - 计算 Comirva GaussianComponent 类的权重

java - 生成一个介于 0 和 x 之间的随机数 (Java)

javascript - jribbble 不返回结果

html - CSS3 淡入淡出动画应该有效,但实际上无效

html - IE 7 和 8 未显示完美的设计 View

windows - 启用/禁用来自vb.net的麦克风播放?

algorithm - 生成没有重复的随机序列

c++ - 洗牌导致两只手相等