我想使用jquery制作节拍器,使用点击声音和颜色来显示速度。那时,视觉部分工作正常,但我的声音有问题。
无法使其正常工作,应该按照所选速度每分钟发出多次哔声。
以下是代码:
$(function(){
var intervalReference = 0;
var metronomeTick = function() {
$("#metronome").stop();
$("#metronome").animate({opacity: 1},
30,
function() { $(this).animate({opacity:0});
$("#beep").append('autostart', 'true');
}
);
};
$(function() {
var slider = $("#bpm").slider({
min: 40,
max: 240,
value: 120,
slide: function( event, ui ) {
clearInterval(intervalReference);
intervalReference = setInterval(metronomeTick, 1000*60/ui.value);
$("#bpmshow").text("bpm: " + ui.value);
}
});
});
});
HTML:
<div id="bpm"></div>
<span id="bpmshow"></span>
<div id="metronome"></div>
<embed id="beep" src="timer.wav" hidden="true" loop="true" autostart="false">
非常感谢任何帮助,非常感谢!
答案 0 :(得分:0)
$("#beep").append('autostart', 'true');
将文字附加到元素。您可能想要自己设置autostart属性:
$("#beep").attr('autostart', 'true');
答案 1 :(得分:0)
我想在每次显示 visual div时听到声音。问题是我使用animate()
函数来执行此操作,但它无法触发play()
事件。
由于HTML5 window.setTimeout()
标记,我使用play()
重写了代码以控制时间,并<audio>
加载并播放 beep 。