对于学校我需要使用带有额外控件的HTML5视频播放器以及从本地驱动器中选择文件的选项。该页面也在本地运行。所以它没有上传。文件(HTML和视频)位于同一本地文件夹中。
对于choose-thing,我使用带有<form><input type="file" id="chosen" /><button type="submit" onclick="open();">Change</button></form>
的表单。现在我的JavaScript应该操纵视频播放器的来源:
function open()
{
var file=document.getElementById('chosen');
var fileURL = window.URL.createObjectURL(file);
player.src=fileURL;
player.load();
}
视频播放器看起来像这样:
<video id=player>
<source src="big-buck-bunny_trailer.webm" type="video/webm" />
<source src="trailer_480p.mov" type"video/mp4" />
</video>
当然我已连接变量&#34;播放器&#34;与我的视频播放器。 player.load() - 正常工作,因此函数被正确调用。
现在我的问题:Javascript-Part中有什么错误或缺失?该项目并没有按照解释的方式运作。
也许你可以帮助我。谢谢;)
答案 0 :(得分:3)
我不确定你在问什么,但你的剧本中有一些问题。
function openPlayer(){ // open() is a native function, don't override
var vplayer=document.getElementById('player'); // A reference to the video-element
var file=document.getElementById('chosen').files[0]; // 1st member in files-collection
var fileURL = window.URL.createObjectURL(file);
vplayer.src=fileURL;
vplayer.load();
return; // A good manner to end up a function
}
不要忘记在onclick()
中更改功能名称。
有关<video>
的更多信息:https://developer.mozilla.org/en/HTML/Element/video
特别是对于脚本:https://developer.mozilla.org/en/DOM/HTMLMediaElement
答案 1 :(得分:0)
我不确定编解码器的缺失是否会导致问题,您的视频源网址应如下所示:
<source src="big-buck-bunny_trailer.webm" type='video/webm; codecs="vp8, vorbis"' />