2016-11-21 16 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。这有助于。 :-) –