我觉得这是一个愚蠢的问题所以我道歉,但我对JavaScripting的经验很少。
我有一个应用程序,我希望允许用户注释(标记)视频,所以我使用https://github.com/spchuang/videojs-markers作为videojs的插件,它看起来正是我需要的。
但是在允许用户添加标记后,我想将它们记录在我的数据库中,因此我需要能够获得原始标记结构(即每个标记的时间和文本)。
下面的代码显示了我的内容。这是我遇到麻烦的recordMarks
功能。这就是我想要获得标记的地方,以便我通过Ajax将它们发布到我的数据库
//load the marker plugin
myPlayer.markers({
...
markers: [
]
});
function markTime() {
currentTime = getTime('Mark');
myPlayer.markers.add([{
time: currentTime,
text: currentTime,
overlayText: 'Tag',
class: 'special-blue'
}]);
console.log('marked: ' + currentTime)
}
function recordMarks() {
console.log(myPlayer.markers.markers); // shows as Undefined
// Try another way
for(var i =0; i < myPlayer.markers.length; i++){
console.log('mark ' + i + ' is ' + myPlayer.markers[i].text);
}
}
答案 0 :(得分:0)
鉴于缺乏解决方案,我最终宣布了一个全局标记数组,这样每次添加标记时,我都会将它添加到全局数组和播放器中。