【发布时间】:2011-11-29 12:48:26
【问题描述】:
我通过更改代码中的video 标签的src 来动态加载视频。当我在 ipad 上尝试我的代码时(不知道它是否在模拟器中工作),第一个视频播放正常,但下一个视频只是给我一个黑屏。我试过先播放第二个视频(检查编码问题),它可以正常播放。
这是我加载/播放视频的 javascript 函数:
function loadVideo(video_path){
var vid = document.getElementById('v');
vid.src = video_path;
vid.load();
// play the video once it has loaded
vid.addEventListener('canplaythrough', function(e){
vid.style.display = "block";
vid.play();
}, false);
// hide the video container once the video has finished playing
vid.addEventListener('ended', function(e){
vid.style.display = "none";
}, false);
}
从我的代码中调用,例如:
$('a').click(function(){
switch(video){
case 0:
loadVideo('path/to/myvideo.mp4');
break;
case 1:
loadVideo('path/to/myvideo2.mp4');
break;
case 2:
loadVideo('path/to/myvideo3.mp4');
break;
// etc
}
video++;
});
还有我在body标签内的html:
<video id="v" type="video/h264" width="960" height="500"></video>
我尝试在每次播放后删除video 标签并再次插入,但没有效果。欢迎提出想法! :)
【问题讨论】:
-
第二个代码块中的视频变量代表什么?我没有看到它在您的第一个代码块中的任何地方定义。如果不知道代码在做什么,很难说出发生了什么。
标签: javascript ipad html video