Uncaught TypeError: Cannot read property 'id' of null
Uncaught TypeError: Cannot read property 'id' of null
我正在尝试创建一个 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();
}
您的标记中没有包含 id player 的元素。所以当你告诉 JS getElementById 时,它什么也找不到。所以值变成了'null'。之后您调用 player.id - 这与尝试调用不存在的对象的 属性 id 相同。
修复:
为您的播放器赋予 id="player"
属性或更改 selection 调用。 select 元素还有其他方法。
document.getElementById(id_string)
document.getElementsByTagName(tag_name)
document.getElementsByClassName("class_values")
document.getElementsByName("name_value")
document.querySelector(css_selector)
document.querySelectorAll(css_selector)
我正在尝试创建一个 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();
}
您的标记中没有包含 id player 的元素。所以当你告诉 JS getElementById 时,它什么也找不到。所以值变成了'null'。之后您调用 player.id - 这与尝试调用不存在的对象的 属性 id 相同。
修复:
为您的播放器赋予 id="player"
属性或更改 selection 调用。 select 元素还有其他方法。
document.getElementById(id_string)
document.getElementsByTagName(tag_name)
document.getElementsByClassName("class_values")
document.getElementsByName("name_value")
document.querySelector(css_selector)
document.querySelectorAll(css_selector)