2016-11-21 37 views
0

您好我有一個小的jquery腳本,它從一個按鈕獲取數據,將其用作容器的id並切換容器的類。 該腳本工作正常,但只有當我有「日誌(audioId);」啓用。如果我刪除這部分腳本不起作用。任何想法我做錯了什麼?jquery只能運行日誌()

感謝

jQuery (document).ready(function($){ 
     var playing = false; 
     var btns = $('[data-music]'); 
     $(btns).each(function() { 
     $('[data-music]').on('click', function(e) { 
     var FFplayer = $(this).data('music'); 
     $("#" + FFplayer).toggleClass("audio-hidden audio-shown"); 
      var audioId = $("#" + FFplayer).find('audio').attr('id'); 
      if (playing == false) { 
       $("#" + audioId)[0].play(); 
       playing = true; 
      } else { 
       $("#" + audioId)[0].pause(); 
       playing = false; 
       } 

      log(audioId);      
    }); 
}); 
}) 

回答

0

你需要做兩個選擇所有[data-music]物品進入btns和循環都看?我認爲這會給你沒有做$(btns).each相同的行爲?裏面的函數this應該參考每個[data-music]元素。

jQuery (document).ready(function($){ 
    var playing = false; 
    $('[data-music]').on('click', function(e) { 
      var FFplayer = $(this).data('music'); 
      $("#" + FFplayer).toggleClass("audio-hidden audio-shown"); 
      var audioId = $("#" + FFplayer).find('audio').attr('id'); 
      if (playing == false) { 
       $("#" + audioId)[0].play(); 
       playing = true; 
      } else { 
       $("#" + audioId)[0].pause(); 
       playing = false; 
      } 
    }); 
}); 
+0

太好了。有用。謝謝。剛開始jQuery。這有助於。 :-) –