如何让视频播放非常随机? (现在它正在播放法国,荷兰和荷兰之后,法国,但我希望随机抽出这两个)
var playing ='FR';
function video_idle() {
$('#mediaplayer').attr('src',playing + '.mp4' ).show();
mediaplay_video= document.getElementById('mediaplayer');
mediaplay_video.play();
mediaplay_video.onended = function(e) {
console.log('>>> Playing finished: ', e);
if(playing ==='FR') {
playing='NL';
video_idle();
} else {
playing='FR';
video_idle();
}
};
}
答案 0 :(得分:2)
假设您只想在两种可能的语言之间进行随机播放,可以使用Math.round(Math.random())
,它将为您提供0和1的值(在JavaScript中将测试为true或false):
var playing ='FR';
function video_idle() {
$('#mediaplayer').attr('src',playing + '.mp4' ).show();
mediaplay_video= document.getElementById('mediaplayer');
mediaplay_video.play();
mediaplay_video.onended = function(e) {
console.log('>>> Playing finished: ', e);
if(Math.round(Math.random())) {
playing='NL';
video_idle();
} else {
playing='FR';
video_idle();
}
};
}
如果您有更多语言,或者您希望语言数量增加,您将需要考虑@Lars Ebert提出的解决方案。
答案 1 :(得分:1)
要选择随机视频,只需将所有可能的语言放入数组中,然后随机选择一种:
var languages = ['FR', 'NL'];
var playing = 'FR';
function video_idle() {
$('#mediaplayer').attr('src',playing + '.mp4' ).show();
mediaplay_video= document.getElementById('mediaplayer');
mediaplay_video.play();
mediaplay_video.onended = function(e) {
console.log('>>> Playing finished: ', e);
playing = languages[Math.floor(languages.length * Math.rand())];
video_idle();
};
}
languages.length * Math.rand()
为你提供一个介于0和数组长度之间的随机浮点数,然后Math.floor()
将它向下舍入,这样你就得到一个从0到length-1
的随机整数,它们是你的数组键。