我正在处理一个页面,该页面具有多个 HTML5 视频元素,当单击链接时,这些元素会在 CSS 模式框中弹出。该页面最初会开始下载页面上的每个视频,但是,在这里找到类似的主题后,我能够将源设置为 src="",从而使页面快速加载。当用户选择一个视频并且它在模式框中弹出时,我现在很难恢复下载。
我对 Javascript 并不陌生,但我也不精通。理想情况下,每个视频源都应该设置为“”,然后当视频打开时,视频应该重新加载。我还添加了一个功能,用于在模式关闭时暂停视频,因为它用于继续播放。感谢任何帮助或批评,我在这里学习。谢谢!
HTML:
<div class="image" style="float:left;margin:0;"><a href = "#layers" id="showModal"><img src="video-image.png" alt="Play visualization" width="150"/><br />Layers</a>
<div id="layers" class="modalDialog">
<div>
<a href="#close" class="close" id="closeModal">Close</a>
<h3>Layers</h3>
<video id="videoContainer" class="videoContainer" loop="loop" style="width:698px;">
<source src="video-file.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
<source src="video-file.webm" type='video/webm; codecs="vp8, vorbis"' />
<source src="video-file.ogv" type='video/ogg; codecs="theora, vorbis"' />
</video>
</div>
</div>
</div>
Javascript:
$(document).ready(function(){
for(var i=0; i< 20; i++)
{
document.getElementsByTagName("video")[i].src="";
}
$("#showModal").click(function() {
var videoID = document.getElementsById("showModal").getAttribute('href');
var videoElement = document.getElementsById(videoID).getElementsByTagName("video");
videoElement.load();
});
$("#closeModal").click(function() {
$("#videoContainer")[0].pause();
});
});