app.drop(); Latest
by Farzad Cyrus
JavaScript
// ************************************************
// DROP
// ************************************************
var drop = function () {
this.onOpenHandlers = [];
this.onCloseHandlers = [];
this.selector;
var self = this;
// IS ACTIVE
function isActive(selector, isRendered) {
if (isRendered && typeof(isRendered) === "boolean") {
if (selector.hasClass('active') && selectorContainer.hasClass('active')) {
return true;
} else {
return false;
}
} else {
if (selector.hasClass('active')) {
return true;
} else {
return false;
}
}
}
// IS RENDERED
function isRendered(selector) {
if (selector.filter('[data-drop-render]').length) {
return true;
} else {
return false;
}
}
// ON CLICK
function onClick(selector, selectorButton, selectorClose) {
if (typeof (selector != "undefined")) {
if (typeof (selector) != 'object') {
selector = $(selector);
}
if (!selector.hasClass('drop') || typeof selector == "undefined") {
console.error('This is not a valid selector, an #ID or $() is required.')
return;
}
// DROP, DROP BUTTON, DROP ID, DROP CONTAINER & DROP CLSOE
var selectorButton = selector.find('> .drop-button'),
selectorID = selectorButton.data('drop-id'),
selectorContainer,
selectorClose;
if (isRendered(selector)) {
selectorContainer = $('.drop-container').filter('[data-drop-id="' + selectorID + '"]');
} else {
...