Javascript JS';让我们在jQuery中玩()吧?
jQuery中是否有JS的play()或pause()方法的等价物?我正在寻找jquery解决方案,但最好不要其他插件Javascript JS';让我们在jQuery中玩()吧?,javascript,jquery,audio,Javascript,Jquery,Audio,jQuery中是否有JS的play()或pause()方法的等价物?我正在寻找jquery解决方案,但最好不要其他插件 $('#play').click(function() { function play() { // the same in jquery ? document.getElementById('demo').play(); document.getElementById('demo').volume = 1;
$('#play').click(function() {
function play() {
// the same in jquery ?
document.getElementById('demo').play();
document.getElementById('demo').volume = 1;
}
function play_pause() {
// the same in jquery ?
document.getElementById('demo').pause();
document.getElementById('demo').currentTime = 0;
}
if ( $(this).val() === "play" ) {
$(this).val("pause");
play();
} else {
$(this).val("play");
pause();
}
});
我需要最简单的解决方案,而不是大花式插件请 您可以像这样从jQuery获取原始HTML元素
$("#demo")[0].play();
您可能还需要检查演示元素是否确实存在:
if($("#demo").length) $("#demo")[0].play();
因此,在您的示例中,您将:
$('#play').click(function() {
if ( $(this).val() === "play" ) {
$(this).val("pause");
$("#demo")[0].play();
$("#demo")[0].volume = 1;
} else {
$(this).val("play")[0].pause();
$("#demo")[0].pause();
$("#demo")[0].currentTime = 0;
}
});
当我有10个不同实例的音频标签时,我可以将此[0]用于特定实例吗?@Borislav当然可以。如果有13个音频元素,可以使用
$(“#audio”)[12]
访问第13个元素。不过,在尝试访问它之前,您可能还需要检查实际上有13个元素。我将使用each()检查它,如果您使用的是,则可能使用某种类型的[this]。每个都不要忘记它包含DOM元素的重载:$(“#audio”)。每个(索引,元素){element.play();//元素是DOM元素,不是jQuery对象})代码>:)