【发布时间】:2019-05-28 15:45:28
【问题描述】:
我正在使用 videojs-marker 插件(http://www.sampingchuang.com/videojs-markers)来构建一个自定义播放器,用户可以通过它来注释(命名一个人的动作)视频的某些部分(不仅仅是一个点),所以我的计划就是让每一个标记都有它合适的宽度(这样它就可以覆盖这个动作的持续时间)以及覆盖文本的合适的显示时间。
<script>
var player = videojs("my-video", {
controls: true,
autoplay: false,
preload: 'auto',
...
player.markers({
markerStyle: {
'width':'10px',
'border-radius': '30%',
'background-color': '#009DE0'
},
markerTip:{
display: true,
text: function(marker) {
return marker.text;
},
time: function(marker) {
return marker.time;
}
},
breakOverlay:{
display: true,
displayTime: 1,
style:{
'width':'100%',
'height': '20%',
'background-color': 'rgba(0,0,0,0.7)',
'color': 'white',
'font-size': '17px'
},
text: function(marker) {
return marker.overlayText;
}
},
onMarkerClick: function(marker) {},
onMarkerReached: function(marker) {},
markers: [
{time: 9.5, text: "1",overlayText: 'attack', class: 'custom-marker'},
{time: 15, text: "2",overlayText: 'defense'}
]
});
...
因此,用户将通过输入以下信息来操作另一个 div 以添加特殊标记:开始时间、结束时间和每个操作的定义。然后这个标记会显示在时间轴上,我对这部分已经有了一些想法。所以现在,我只是想知道如何创建“标记”对象并设置自己的“标记样式”,而不是使用“标记”类并在此标记列表中输入新信息
markers: [
{time: 9.5, text: "p1",overlayText: 'attack', class: 'custom-marker'},
{time: 15, text: "p2",overlayText: 'defense'}
]
我是新来的,如果描述不清楚,请给我反馈,谢谢!
【问题讨论】:
标签: javascript html video.js