名前

2016-04-06 10 views
0

で変数を検索し、私はjQueryのオーディオプレーヤーや音楽のリストを作成したので、私は次のように変数内のすべてのオーディオ要素を定義した:だから名前

var fade = new Audio('music/fade.mp3'); 
var spectre = new Audio('music/fade.mp3'); 

、私は私がクリックしたときに、その変数を選択すると、このような要素:

var cs = fade; //default 
$('.item').click(function(){ 
    cs = $(this).get(0).id; 
    cs.play(); 
}) 

けど...それは文句を言わないオーディオ、コンソールログを再生する:

ここ
<div class="item" id="fade">Alan Walker - Fade</div> 
<div class="item" id="spectre">Alan Walker - Spectre</div> 

は、私はIDを得た方法であるcs.play is not a function

私は選択されたID(変数付き)で音楽を再生したいです。

+1

単に 'this.id'ない' $(この)に.get(0).id'を使用しています。 – undefined

+1

英語では、自分自身を指すとき、私は常に大文字になっています。 –

答えて

3

csは単なる文字列なので、再生方法はありません。次のように何をする必要がある:

var audios = { 
 
    fade: new Audio('music/fade.mp3'), 
 
    spectre = new Audio('music/fade.mp3') 
 
}; 
 
var cs = fade; //default 
 
$('.item').click(function(){ 
 
    cs = $(this).get(0).id; 
 
    audios[cs].play(); 
 
})

+0

これはあなたの時間のために、完璧に動作します。 :) – NiKoLaPrO