js加载问题

为什么使用js修改src代码已经实现,但是浏览器还是找不到不到资源

<body>
    <div class="container"></div>
    <video width="100%" poster="./001.jpg" controls>
        <source id="video_url" src="" type="video/mp4">
        您的设备不支持。
    </video>

    <script>
        window.onload = function () {
            var video_url = document.getElementById("video_url");
            var myDate = new Date();
            var month = myDate.getMonth() + 1; //月份
            var date = myDate.getDate(); //日期
            // 判断对否小于10
            if (month < 10) {
                month = '0' + month;
            }
            if (date < 10) {
                date = '0' + date;
            }
            var nowDate = month + date;
            var mysrc = './video/panhou' + nowDate + '.mp4'
            video_url.src = mysrc;
            console.log(video_url);
        }
    </script>

但是修改成这样就又可以了

<body>
    <div class="container"></div>
    <video width="100%" poster="./001.jpg" controls>
        <source id="video_url" src="" type="video/mp4">
        您的设备不支持。
    </video>

    <script>
        // window.onload = function () {
            var video_url = document.getElementById("video_url");
            var myDate = new Date();
            var month = myDate.getMonth() + 1; //月份
            var date = myDate.getDate(); //日期
            // 判断对否小于10
            if (month < 10) {
                month = '0' + month;
            }
            if (date < 10) {
                date = '0' + date;
            }
            var nowDate = month + date;
            var mysrc = './video/panhou' + nowDate + '.mp4'
            video_url.src = mysrc;
            console.log(video_url);
        // }
    </script>
</body>

有没有知道的朋友?

阅读 1.3k
1 个回答

window.onload中执行对source.src的修改,需要执行audio/video.load,即html代码中video id命名为'video',video_url.src = mysrc;
document.getElementById("video").load();//添加此句

不在window.onload中执行,相当于直接预设了source.src,文档流渲染过程中会初始化audio/video.load,所以此种方法不会出现问题。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题