我正在尝试创建一个html5音频播放器。这是一个广播电台,所以我需要播放器重新加载源并开始播放来自' currrentTime = 0;'当流再次开始时。我在脚本中遇到错误,我不确定为什么?
我的脚本已运行
错误位置:if (player.id == 'paused') {
- 我收到错误:' Uncaught TypeError: Cannot read property 'id' of null
HTML:
<audio onplay="checkState()" controls="controls" id="paused" src="http://rmceng.radiomaria.ca:8162/;stream.mp3"></audio>
我的JS:
function checkState() {
var player = document.getElementById('player');
var psrc = 'http://rmceng.radiomaria.ca:8162/;stream.mp3';
if (player.id == 'paused') {
player.currentTime = 0;
player.src = psrc;
player.load();
player.play();
document.getElementById('player').id = 'playing';
}
else {
player.pause();
player.src = "";
document.getElementById('player').id = 'paused';
}
}
window.onload = function(){
checkState();
}
答案 0 :(得分:0)
您的标记中没有包含id播放器的元素。所以当你告诉JS getElementById时,它找不到任何东西。因此价值变为“无效”。之后你调用player.id - 这与尝试调用一个不存在的对象的属性id相同。
修复:
为播放器提供属性id="player"
或更改选择呼叫。还有其他方法可以选择元素。
document.getElementById(id_string)
document.getElementsByTagName(tag_name)
document.getElementsByClassName("class_values")
document.getElementsByName("name_value")
document.querySelector(css_selector)
document.querySelectorAll(css_selector)