我在html中注册了声音片段:
<audio class="aaa" id="sss"><source src="url/sound.wav"/></audio>
<script type="text/javascript">var sss = document.getElementById("sss"); sss.volume='0.1';</script>
可以在特定div上通过mouseenter事件播放此声音:
$('#divid').mouseenter(function () {
$(sss.play());
});
用音频类而不是id如何实现?
编辑:解决
最佳答案
.play()
是HTMLAudioElement对象而不是jQuery对象的方法,jQuery包装器在此处不执行任何操作,因为您将.play()
方法的重新调整后的值传递给它,因此可以使用jQuery选择元素,获取DOM元素对象(s)来自集合,并在其上调用.play()
方法:
$('audio.aaa').get(0).play(); // works for the first matched element in the collection
如果有多个元素,则可以使用
.each()
方法遍历集合:$('audio.aaa').each(function() {
// `this` keyword here refers the HTMLAudioElements
this.foo();
});