Add detach api method to remove plugin from player

This commit is contained in:
Chris Boustead 2017-11-15 16:05:28 -05:00
parent 4c4f0179c3
commit 53fdf0a0fd
2 changed files with 14 additions and 6 deletions

View File

@ -1,6 +1,6 @@
{
"name": "videojs-vtt-thumbnails",
"version": "0.0.2",
"version": "0.0.3",
"description": "Display thumnails on progress bar hover, driven by external VTT files.",
"main": "dist/videojs-vtt-thumbnails.cjs.js",
"module": "dist/videojs-vtt-thumbnails.es.js",

View File

@ -73,15 +73,23 @@ class vttThumbnailsPlugin {
}
src(source){
delete this.vttData;
delete this.thumbnailHolder;
delete this.lastStyle;
this.resetPlugin();
this.options.src = source;
this.initializeThumbnails();
}
detach() {
this.resetPlugin();
}
resetPlugin() {
this.progressBar.removeEventListener('mouseenter',() => { return this.onBarMouseenter() });
this.progressBar.removeEventListener('mouseleave',() => { return this.onBarMouseleave() });
this.progressBar.removeEventListener('mousemove',this.onBarMousemove);
delete this.progressBar;
this.options.src = source;
this.initializeThumbnails();
delete this.vttData;
delete this.thumbnailHolder;
delete this.lastStyle;
}
/**