2016-11-05 6 views
0

最近、プログラミングの初心者としてJavascriptを学び始めました。私はホラー映画を選んでいる間に問題にぶち当たっています。ホラーフィルムピッカーは、配列からフィルムをランダムに選ぶだけでなく、スライディングタブでそれに対応する画像を表示します。式で同じ値を返すようにMath.randomで関数を強制する方法はありますか?

これは、メッセージに関連するコード(フィルム配列が道長いですが、唯一の2つのリンクを投稿することができます)です。

var films = [ 
["Lake Mungo", "https://upload.wikimedia.org/wikipedia/en/6/68/Lake_Mungo_Official_Poster.jpg"], 
["A Tale of Two Sisters", "http://www.thenightmarenetwork.net/wp-content/uploads/2015/10/tale2sisters.png"] 
]; 

function pickFilm() { 
    return Math.floor(Math.random() * films.length); 
} 

function showFilm(){ 
$("#newreplyDiv").append("<img src='" + films[pickFilm()][1] + "'><span id='movieText'><h1>The next film you're watching is: " + films[pickFilm()][0] + " !</h1><h2>" + 
"Hope you enjoy it and try to sleep at night alright?</h2></span>") 
} 

それは、同じインデックスの両方の値を返す作るのいずれかの方法がありますアレイ?このバージョンでは、ランダムなムービー名を返し、同じサブ配列内のランダムなピクチャではなくランダムなピクチャを返し、その値をそのインデックスにロックする前に値を関数に代入すると、ユーザがボタン。

提供される任意の助けを事前にありがとうございます、おそらくそれを固定する本当に簡単な方法があります:)

+4

showFilm関数( 'var pickedFilm = pickFilm();')内で変数を作成し、その変数を2回使用します( 'films [pickedFilm] [1]')? –

+1

それは完璧に動作します、ありがとう! –

答えて

0

あなたがランダムピックを保存するためにshowFilm関数内の変数を作ることができ、そのを再利用:

function showFilm(){ 
    var pickedFilm = pickFilm(); 
    $("#newreplyDiv").append("<img src='" + films[pickedFilm][1] + "'><span id='movieText'><h1>The next film you're watching is: " + films[pickedFilm][0] + " !</h1><h2>" + 
    "Hope you enjoy it and try to sleep at night alright?</h2></span>") 
} 
関連する問題