我喜欢新的 jwplayer 6,而且我有商业版本,这样我就可以给它贴上品牌标签。我使用版本 5 得到了我想要的一切(包括捕获“onplaylistITme”事件) - 但现在是时候迁移到版本 6 以获得更广泛的兼容性和 Logo 显示了。
这是在 jwPlayer 5 代码上运行的播放器。请注意顶部显示的歌曲标题。
<小时/> version 5 of jwPlayer - this shows what I want <小时/> 相关部分是这个小的 Javascript 处理程序,它获取由第一次播放列表项创建的事件: <div id="playlistiteminfo"></div>
<div id="container" ></div>
<script type="text/javascript">
jwplayer("container").setup({
'flashplayer': '<?rev put gPlayerParamsA[jwplayerSWF] ?>',
height: <?rev put gPlayerParamsA[playerHeight] ?>,
width: <?rev put gPlayerParamsA[playerWidth] ?>,
logo: {
file: '<?rev put gPlayerParamsA[watermarkLoc] ?>',
link: 'http://barncard.com'
},
'playlist': [{
<?rev
put tPlayListP -- JAVASCRIPT PLAYLIST CREATED EARLIER INSERTED HERE
?>
}],
'playlist.position': "<?rev put gPlayerParamsA[playListPosition] ?>",
'playlist.size': <?rev put gPlayerParamsA[playListSize] ?>,
'controlbar.position': 'bottom',
skin:'<?rev put gPlayerParamsA[skinSWF] ?>',
repeat: 'list',
events: {
onPlaylistItem: function(evt) {
var playlistitem = this.getPlaylistItem();
var infodiv = document.getElementById("playlistiteminfo");
infodiv.innerHTML = "";
infodiv.innerHTML += playlistitem.title;
}
}
});
<?rev
if gPlayerParamsA["single_play_index"] is a number
then
?>
jwplayer().playlistItem(<?rev put gPlayerParamsA["single_play_index"] ?>);
<?rev
end if
?>
</script>
转到版本 6 破坏了很多东西,语法更简单、更清晰,但有所不同,但除了上面列出的事件代码之外,我能够让所有内容再次工作。应该注意的是,我使用的是 Livecode 服务器端而不是 PHP,但这没有问题。
<小时/><div id="container" ></div>
<script type="text/javascript">
jwplayer("container").setup({
height: <?rev put gPlayerParamsA[playerHeight] ?>,
width: <?rev put gPlayerParamsA[playerWidth] ?>,
logo: {
file: "<?rev put gPlayerParamsA[watermarkLoc] ?>",
link: "http://barncard.com",
position: "bottom-left"
},
playlist: [{
<?rev
put tPlayListP -- JAVASCRIPT PLAYLIST CREATED EARLIER INSERTED HERE
?>
}],
displaytitle: "false",
listbar: {
position: "right",
size: <?rev put gPlayerParamsA[playListSize] ?>,
}
});
<?rev
if gPlayerParamsA["single_play_index"] is a number
then
?>
jwplayer().playlistItem(<?rev put gPlayerParamsA["single_play_index"] ?>);
<?rev
end if
?>
</script>
因此,当我在 postion: "right"之后将此代码片段添加到上面的代码中时,它会破坏整个播放器并且不起作用。
repeat: 'list',
events: {
onPlaylistItem: function(evt) {
var playlistitem = this.getPlaylistItem();
var infodiv = document.getElementById("playlistiteminfo");
infodiv.innerHTML = "";
infodiv.innerHTML += playlistitem.title;
}
所以:
- 我无法判断这些事件在 jwPlayer 6 中是否有效 - 一些网络帖子表明它们无效。
- 或者这是我对正确语法的最低限度的理解。
我希望有人已经成功地做到了这一点或有解决方法......
最佳答案
在 JW6 中,更改:
重复:'列表',
致:
repeat: 'true',
这应该可以解决问题。
关于javascript - 在 <div> 中显示 jwplayer 6 播放列表中当前播放的项目 - 在 jwPlayer 5 中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21517766/