UNPKG

boilerplate.js

Version:

Development Tools

31 lines (22 loc) 877 B
/* How To Use <button>Demo</button> document.querySelector('button').slideUp(() => { console.log('optional callback'); }, 2); // Animation duration = 2 Seconds -- Default = 0.2 Seconds */ Element.prototype.slideUp = function(cb, speed) { let element = this; element.style.cssText = 'transition: all 0.2s ease 0s; transform-origin: center top; transform: scaleY(1)'; if (!cb) cb = null; speed = typeof cb !== 'function' ? cb : speed; if (!speed) speed = 200; speed = parseInt(speed) >= 100 ? speed/1000 : speed; element.style.transition = `all ${speed}s`; element.style.transformOrigin = 'top center'; element.style.transform = 'scaleY(0)'; setTimeout(() => { element.classList.add('hidden'); if(typeof cb === 'function') cb(element); }, speed * 1000); };