Javascript 暂停Div悬停时的音频
我设法让音频在hover上播放,但当我的鼠标离开该区域时,我无法让它暂停 小提琴:Javascript 暂停Div悬停时的音频,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我设法让音频在hover上播放,但当我的鼠标离开该区域时,我无法让它暂停 小提琴: $(文档).ready(函数(){ var audio=$(“#audio-1”)[0]; $(“.box”)。悬停 (功能(){ 音频播放(); }, (功能(){ audio.stop(); }); }); .box{ 高度:500px; 宽度:500px; 显示器:flex; 证明内容:中心; 对齐项目:居中; 字体大小:25px; 颜色:白色; 背景:黑色; } 您的浏览器不支持音频元素。 如果你让
$(文档).ready(函数(){
var audio=$(“#audio-1”)[0];
$(“.box”)。悬停
(功能(){
音频播放();
},
(功能(){
audio.stop();
});
});
.box{
高度:500px;
宽度:500px;
显示器:flex;
证明内容:中心;
对齐项目:居中;
字体大小:25px;
颜色:白色;
背景:黑色;
}
您的浏览器不支持音频元素。
如果你让我停下来,这首歌就会播放!
您需要使用
音频.pause()
而不是.stop()
。例如:
$(document).ready(function(){
var audio = $("#audio-1")[0];
$('.box').on({
mouseenter: function() {
audio.play();
},
mouseleave: function() {
audio.pause();
}
});
});
这将在停止的位置继续。如果您想从一开始就开始,正如其他答案所建议的,您需要在启动之前或暂停之后包括audio.currentTime=0;
JSFIDLE:stop
确实不是用于音频和视频文件操作的javascript方法。而是使用以下方法之一:
audio.pause();
audio.currentTime = 0;
请参见小提琴似乎不起作用?您的javascript在关闭函数中有一个错误。在本例中,当鼠标悬停在div上时,歌曲播放!
audio.pause();
audio.currentTime = 0;