选择本地视频并在HTML5视频播放器中播放(所有本地,同一文件夹)

时间:2012-04-20 11:11:44

标签: javascript html5 video filechooser

对于学校我需要使用带有额外控件的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中有什么错误或缺失?该项目并没有按照解释的方式运作。

也许你可以帮助我。谢谢;)

2 个答案:

答案 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"' />