From 382401d527314b270e1c67b4f88cd3bfbca81d46 Mon Sep 17 00:00:00 2001 From: Victor Häggqvist Date: Thu, 14 Jan 2016 22:54:43 +0100 Subject: create plugin architecture --- src/Plugins/ActivityIndicator.js | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 src/Plugins/ActivityIndicator.js (limited to 'src/Plugins/ActivityIndicator.js') diff --git a/src/Plugins/ActivityIndicator.js b/src/Plugins/ActivityIndicator.js new file mode 100644 index 0000000..8a1e83b --- /dev/null +++ b/src/Plugins/ActivityIndicator.js @@ -0,0 +1,36 @@ +/** + * + * @author Victor Häggqvist + * @since 2016-01-14 + */ + +export class ActivityIndicator { + + constructor() { + this.element = document.createElement('div'); + this.element.id = 'imagelightbox-loading'; + this.element.appendChild(document.createElement('div')) + } + + /** + * + * @param {LightBox} lightbox + */ + register(lightbox) { + lightbox.addOnLoadStartListener(this.activityIndicatorOn.bind(this)); + lightbox.addOnLoadEndListener(this.activityIndicatorOff.bind(this)); + lightbox.addOnEndListener(this.activityIndicatorOff.bind(this)); + } + + activityIndicatorOn() { + document.body.appendChild(this.element); + //$('
' ).appendTo('body'); + } + + activityIndicatorOff() { + try { + document.body.removeChild(this.element); + } catch (e) {} + } + +} -- cgit v1.2.3