jwplayer 6:如何动态加载文件,使用javascript api?

时间:2012-12-22 03:02:50

标签: javascript jwplayer

我正在尝试从jw5迁移到jw6。

在jw5中,我能够动态加载视频:

myplayer.load({file: 'myfile.mov', image: 'mysplash.jpg'});

这在jw6中不起作用。我花了很多时间浏览在线文档,但没有找到任何.load的引用。我开始担心这不再支持了。文档“migrating from jw5 to jw6”有这个神秘的评论:

  

jwplayer()。setup()调用现在是嵌入媒体的唯一有效方法

这是否意味着不再可能使用新文件动态加载播放器,例如使用javascript api响应点击事件?在初始播放器设置期间,是否必须在播放列表中指定所有文件?

谢谢。

3 个答案:

答案 0 :(得分:6)

我也遇到了这个问题,我发现了什么问题。

如果在设置时未指定媒体,则JWP6不能与load()函数一起使用,而不是JWP5。

如果我使用此代码:

jwplayer("container").setup({
    width: 640,
    height: 480
});

之后,load()功能无效。

解决方法是指定一些现有的虚拟媒体文件:

jwplayer("container").setup({
    width: 640,
    height: 480,
    file: '/some/summy/file.mp4'
});

之后,JavaScript函数load()可以加载新媒体。

这是BUG !!!

答案 1 :(得分:4)

您仍然可以在JW6中使用load()调用。 http://www.longtailvideo.com/support/jw-player/28851/javascript-api-reference

负载(播放列表)     将新播放列表加载到播放器中。播放列表参数是必需的,可以是带有播放列表项的数组,也可以是指向RSS源位置的字符串。

如果您在使用load()在JW6中工作时遇到问题,请提供调试示例,谢谢。

答案 2 :(得分:0)

这是一篇很老的文章但是我想举例说明我会做什么(JWplayer6)

var playerInstance = undefined;
button.onclick = function(newData){
    if (playerInstance === undefined){
        playerInstance = jwplayer("myElement");
        playerInstance.setup({
            width: 640,
            height: 480,
            file: newData
        });
    } else {
        playerInstance.load(newData);
    }
};

虚拟内容向用户加载用户可能不想要的数据,并且在页面上预加载播放器的加值仅为加载请求提供了一点点优势。 (等待玩家js执行)