Added opening/closing classnames for offcanvas behavior (#390)

This commit is contained in:
Djamil Legato
2015-05-29 17:44:14 -07:00
parent d5c6af940a
commit 863f52de91
2 changed files with 16 additions and 6 deletions
+8 -3
View File
@@ -50,6 +50,8 @@ var Offcanvas = new prime({
touch: true,
openClass: 'g-offcanvas-open',
openingClass: 'g-offcanvas-opening',
closingClass: 'g-offcanvas-closing',
overlayClass: 'g-nav-overlay'
},
@@ -181,9 +183,8 @@ var Offcanvas = new prime({
if (this.opened) { return this; }
if (!this.htmlEl.hasClass(this.options.openClass)) {
this.htmlEl.addClass(this.options.openClass);
}
this.htmlEl.addClass(this.options.openClass);
this.htmlEl.addClass(this.options.openingClass);
this.overlay[0].style.opacity = 1;
@@ -194,6 +195,7 @@ var Offcanvas = new prime({
setTimeout(bind(function() {
var panel = this.panel[0];
this.htmlEl.removeClass(this.options.openingClass);
panel.style.transition = panel.style['-webkit-transition'] = '';
}, this), this.options.duration);
@@ -209,6 +211,8 @@ var Offcanvas = new prime({
if (!this.opened && !this.opening) { return this; }
if (this.panel !== element && this.dragging) { return false; }
this.htmlEl.addClass(this.options.closingClass);
this.overlay[0].style.opacity = 0;
this._setTransition();
@@ -219,6 +223,7 @@ var Offcanvas = new prime({
var panel = this.panel[0];
this.htmlEl.removeClass(this.options.openClass);
this.htmlEl.removeClass(this.options.closingClass);
panel.style.transition = panel.style['-webkit-transition'] = '';
}, this), this.options.duration);