【发布时间】:2017-09-04 23:02:23
【问题描述】:
我用 html5 和 javascript 创建了一个多轨播放器。
var track_1 = document.getElementById('audio_1');
我已经制作了自定义控制按钮:音量、播放、停止、暂停,例如:
$bt_play_audio_mixette_1.click(function() {
if (track_1.paused == false) {
track_1.pause();
} else {
track_1.play();
}
});
我有一个“循环”按钮,我想动态修改为<audio> 属性loop。
我尝试过使用.attr(); 或.prop();,但没有成功。
你知道这段代码有什么问题吗:
var loop_1_active = true;
$bt_loop_audio_1.click(function() {
if (track_1.prop("autoplay", true)) {
track_1.prop("autoplay", false);
loop_1_active = false;
} else {
track_1.prop('loop', true)
track_1.attr("autoplay", true);
}
});
编辑:
如果我使用 jquery 对象:
var track_1_B = $('#audio_1');
我不能使用pause();
error :ReferenceError: track_1 is not defined track_1.pause();
如果我使用纯 JS:
var track_1 = document.getElementById('audio_1');
我可以使用pause();,但我无法更改循环属性
【问题讨论】:
-
你确定
track_1是jquery的一个实例(这样初始化:var track_1 = $(#the_audio_element"))? -
你应该在track_1初始化的地方添加一段代码
-
@freedev 我已经用初始化代码更新了问题。
-
@Szymkowski 我已经用初始化代码更新了这个问题。
-
@Peter Szymkowski “所以这是个问题”是什么意思?
标签: javascript jquery html html5-audio