如果我之前输入脚本内容,为什么代码无效?但是当我在视频标签之后添加脚本时,它起作用了。解释这个plz
var vid = document.getElementById("myVideo");
function play(){
vid.play();
}
function pause(){
vid.pause();
}
</script>
<button onclick="play()">Play</button>
<button onclick="pause()">Pause</button>
<video id="myVideo">
<source src="john.mp4" type="video/mp4">
</video>
</html>
答案 0 :(得分:1)
根据脚本的位置评估脚本。您正在尝试访问尚未呈现的html。
您可以将它放在之前,但请使用document ready
事件。
答案 1 :(得分:0)
Cuz浏览器逐行解释代码。如果你想找到一个不存在javascript的html标签,它显然不会找到它,如果你把视频标签放在脚本标签之后,你的代码就是这种情况。如果你真的想把你的脚本放在html标签之前,你可以强制javascript仅在加载完整的dom后运行。 喜欢:
window.onload = function() {
//your script here
};
或者使用jquery文件就绪功能。 或者将脚本放到外部文件中并使用延迟html脚本属性(如
)调用它 <script src="yourScript.js" defer></script>