mediaelement.js多视频库闪回落

时间:2012-07-31 14:10:10

标签: set mediaelement.js rc

是否有人使用mediaelement.js获得成功的多视频库的URL,其中重复使用MediaElementPlayer的相同实例并使其与IE8&的Flash回退一起使用。 7?

在第一次创建新的MediaElementPlayer之后,我将setSrc更改为一个函数。这对于HTML5组件来说非常强大,但是对于闪回后备失败了。 setSrc正在安慰IE8& 7.它无法识别对象。

将setSrc移动到新MediaElementPlayer的“成功”部分会按预期加载Flash后备和HTML5视频。在尝试更改播放器的来源时,我试图“破坏”并动态重新创建MediaElementPlayer对象,但没有成功。我没有使用var=player声明播放器,因此合理地预计会删除它但没有成功:

player = false;
delete player;

//make a new instance of the mediaelement video player
player = new MediaElementPlayer('#videoPlayer', {
   pluginPath: ''+basePath+'_Includes/JS/',
   success: function (player, node) {
   //set the size (for flash otherwise no video just sound!)
   if($("#rg-gallery.smallGallery").length > 0){
        player.setVideoSize(400, 225);
   } else{
        player.setVideoSize(640, 360);
   }
   player.setSrc([   
      { src: mp4, type: 'video/mp4' },
      { src: webm, type: 'video/webm' }
   ]);       
   player.load();
   player.pause();


   //if the video plays stop the slideshow
      player.addEventListener('play', function () {
      videoPlaying.push('playing');
      stopSlideshow();
      }, false);
   }
});

此处和网络上的研究表明,其他人正在尝试尝试这种类型的动态图库,但我无法找到一个将其显示为技术上可行的示例。

有人破解它的任何示例网址都很可爱。谢谢:))

1 个答案:

答案 0 :(得分:1)

解决。

创建了视频代码的JS变量:

var playerView = '<video width="640" height="360" id="videoPlayer" class="video-js vjs-default-skin" poster="" controls preload="auto"><source id="mp4" type="video/mp4" src="" /><source id="webm" type="video/webm" src=""  /></video>';

在初始化时删除任何现有播放器的任何DOM渲染,将其设置为false并将其删除:

//remove any existing video player
$(".mejs-container").remove();
player = false;
delete player;

为DOM附加新的视频观看次数:

//add a new one
$(".rg-video").append(playerView);

创建了播放器的新实例并设置了src并正常加载:

//make a new instance of the mediaelement video player
player = new MediaElementPlayer('#videoPlayer', { ...

IE8的HTML5视频和Flash视频后备&amp; 7现在是动态混合媒体库的一部分。

关闭茶和奖牌。

:)