jQuery:点击原生音频元素
如何使用jQuery检测本机浏览器音频元素的点击?
似乎在Chrome中不起作用。
$('audio').click(function(){ alert("You clicked on some audio player"); });
http://codepen.io/Subfader/pen/GqrmNQ
你说它似乎不能以通常的方式调用本机音频标签,既不使用vanilla js也不使用jquery。 我尝试使用一个类(我认为会成功),但无济于事。
但是,我说我认为我有解决你的整体问题的方法。 试试下面的代码片段。 当选择一个玩家时,其他玩家停止。 (一次只播放一个)。
您可以通过在播放可见性设置为隐藏或显示时添加可见类来扩展此function:默认情况下为none(但实际上您将如何单击播放? – 嗯)无论如何,点是,您可以自定义。
希望这可以帮助
$("audio").each(function(index) { var num = index+1; $(this).attr('id','myaudio' + num); }); document.addEventListener('play', function(e){ var aplayers = $('audio'); var leng = $('audio').length; //console.log(leng); for(var i = 0; i < leng;i++){ if (aplayers[i] != e.target){ aplayers[i].pause(); } } }, true);
audio{margin-bottom:10px;}
即使在Chrome中使用纯JavaScript,它看起来也不像。 我建议你将元素包装在div中,然后将click事件放在该元素上。
或者,根据您要完成的任务,您可以绑定到其他媒体事件 ,如play
, pause
或seek
。