+1 好问题,是可以的。您想要做的是为进度和当前时间等创建自己的插件/功能。
这里有一个简单的示例,您可以为当前时间创建一个插件/功能,以便开始工作,请确保在特征名称前加上“build”:
(function($) {
MediaElementPlayer.prototype.buildmyfeature = function(player, controls, layers, media) {
var t = this;
$('<div class="mejs-time">'+
'<span class="mejs-currenttime">' + (player.options.alwaysShowHours ? '00:' : '')
+ (player.options.showTimecodeFrameCount? '00:00:00':'00:00')+ '</span>'+
'</div>')
.appendTo(controls);
t.currenttime = t.controls.find('.mejs-currenttime');
media.addEventListener('timeupdate',function() {
if(t.currenttime) {
t.currenttime.html(mejs.Utility.secondsToTimeCode(t.media.currentTime, t.options.alwaysShowHours || t.media.duration > 3600, t.options.showTimecodeFrameCount, t.options.framesPerSecond || 25));
}
}, false);
}
})(jQuery);
并将您的插件/功能添加到功能参数中,如下所示:
$('audio,video').mediaelementplayer({
features: ['playpause','myfeature','progress']
});
以下是翻译的结果:
这里有一个官方mediaelementjs网站上如何创建循环按钮(插件/功能)的示例:
http://mediaelementjs.com/examples/?name=loop
如果您需要一些代码来开始制作进度条,只需查看git上的mep-feature-progress.js。