gpt4 book ai didi

javascript - 错误: Cannot set property 'src' of null

转载 作者:行者123 更新时间:2023-11-28 17:36:51 32 4
gpt4 key购买 nike

当我尝试设置某个元素的源时,它返回一个错误,我不知道为什么这不起作用。这是 JavaScript:

    function playVid() {
var videoPlayer = document.getElementById("video");
var mp4VID = document.getElementById("videoSRC");
var arrOfVid = ["video/video.mp4","video/video1.mp4"]; //, "video/video2.mp4", "video/video3.mp4"];
var arrLenVID = arrOfVid.length;
var randomVID = Math.floor((Math.random() * arrLenVID));
mp4VID.src = arrOfVid[randomVID]; // mp4VIDSRC.src = arrOfVid[randomVID]
videoPlayer.load();
videoPlayer.volume = 0;
videoPlayer.play();
}
playVid();

它的 HTML 部分是:

<video id="video" autoplay="" style="" muted="">
<source id="videoSRC" src="video/video.mp4" type="video/mp4">
error: unsupported video format
</video>

这是我收到的错误消息:

Uncaught TypeError: Cannot set property 'src' of null

似乎没有其他东西可以与之交叉。

最佳答案

加载 HTML 页面时,浏览器会在页面完全加载之前尝试执行页面顶部的内容。因此,如果您的 javascript 函数调用 (playVid();) 位于页面顶部,则它会尝试执行 var mp4VID = document.getElementById("videoSRC"); 在加载 videoSRC 之前。因此 mp4VID 为 null,并且您无法在 null 对象上设置属性。如果是这种情况,您有两个选择。

1) 将函数调用移动到页面底部,就在结束 html 标记之前。

2) 使用 jQuery 等框架并安排函数调用在页面加载后执行 $(document).ready(playVid); 例如。

#2 是我的首选方法:

根据我的经验,大多数人不喜欢视频开始自动播放。

关于javascript - 错误: Cannot set property 'src' of null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48958313/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com