【问题标题】:how to optimize this random playlist html5 audio script如何优化这个随机播放列表 html5 音频脚本
【发布时间】:2015-08-19 11:47:51
【问题描述】:
<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没有在音频标签中集成播放列表功能,这对我来说似乎很有趣。 问候

【问题讨论】:

    标签: html audio random playlist


    【解决方案1】:

    您可以像这样短接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)]
            };
    }())
    

    【讨论】:

      猜你喜欢
      • 2013-07-17
      • 2013-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-25
      • 1970-01-01
      • 2012-03-08
      • 2012-07-27
      相关资源
      最近更新 更多