2016-12-25 6 views
1

ビューに入る前に、コントローラがオーディオファイルをランダムに選択して再生するようにします。私は正直にどこから始めるべきか分かりません。ランダムにオーディオ変数を再生する

コントローラー:

var audioone = new Audio("img/1.mp3"); 
var audiotwo = new Audio("img/2.mp3"); 
var audiothree = new Audio("img/3.mp3"); 

$scope.$on("$ionicView.beforeEnter", function() { 
//something to do with Math.Rand() and then I have no clue? 

} 

任意の助けいただければ幸いです。参考になるのは、ユーザーがそのビューに辿り着くと、激励のランダムな言葉が聞こえ、同じオーダーで同じオーディオを聞くことに飽きたくないので、ランダムにする必要があるということです。

答えて

2

ここで私はそれをやります。私は、オーディオソースの配列を配置し、数学関数を使ってランダム化し、それを元に戻します。

var audios = ['img/1.mp3', 'img/2.mp3', 'img/3.mp3']; 
 

 
var generateRandomAudio = function(audios) { 
 
    var audio = new Audio(audios[Math.floor(Math.random() * audios.length)]); 
 
    return audio; 
 
}
<button onclick="generateRandomAudio(audios)">Generate</button>

+0

チャームのように働いた!私は決してその式を思いついたことはありませんでした...本当に賢い – MehdiN

0
var audios = ['img/1.mp3', 'img/2.mp3', 'img/3.mp3']; 
$scope.$on('$ionicView.beforeEnter', function() { 
    var audio = new Audio(audios[Math.floor(Math.random() * audios.length)]); 
    return audio; 
}); 

しかし、あなたはNativeAudioMediaのようなプラグインコルドバをintegreate必要があります。

この例を見てください:Playing Audio In Your Android And iOS Ionic Framework App。私はあなたを助けることを望む。

幸運を祈る!

+0

OPの仕組みを理解するために、あなたの答えにいくつかの解説を加えてください。また、戻り値の処理方法についての詳細なガイダンスを提供する必要があります –

関連する問題