diff --git a/app/js/trouble.js b/app/js/trouble.js index ed0f612..9f09a06 100644 --- a/app/js/trouble.js +++ b/app/js/trouble.js @@ -1,22 +1,24 @@ -'use strict'; + (function (gbl, $) { - + 'use strict'; + gbl.dropdown = function (options) { - var $dropdown = options.dropdown, - $toggle = options.toggleButton, - token = +new Date(), - ns = options.namespace - elList = $('.dropdowns'), - controlsMegaMenu = (options.controlsMegaMenu && options.controlsMegaMenu == false)? false: true; - clickAnywhereToClose = (options.clickAnywhereToClose && options.clickAnywhereToClose == false) ? false : true, - transitionEnd = gbl.utilities.whichTransitionEvent(); + var $dropdown = options.dropdown; + var $toggle = options.toggleButton; +// var token = +new Date(); + var ns = options.namespace; +// var elList = $('.dropdowns'); + var controlsMegaMenu = (options.controlsMegaMenu && options.controlsMegaMenu === false)? false: true; + var clickAnywhereToClose = (options.clickAnywhereToClose && options.clickAnywhereToClose === false) ? false : true; + var transitionEnd = gbl.utilities.whichTransitionEvent(); + var i; $dropdown.addClass('gbl_dropdown').data('status', 'closed'); - $toggle.addClass('gbl_dropdown_trigger') - $dropdown.attr('aria-expanded', 'false') + $toggle.addClass('gbl_dropdown_trigger'); + $dropdown.attr('aria-expanded', 'false'); $toggle.attr('aria-controls', $dropdown.attr('id')); $dropdown.wrapInner('
'); @@ -28,8 +30,8 @@ function setCloseHandler() { $(document).on('click.' + ns, function (e) { - var $clicked = $(e.target) - if (!$clicked.is($dropdown) && ($clicked.parents().filter($dropdown).length == 0)) { + var $clicked = $(e.target); + if (!$clicked.is($dropdown) && ($clicked.parents().filter($dropdown).length === 0)) { close(); } }); @@ -39,9 +41,9 @@ $(document).off('click.' + ns); } - function processDropdownEls() { +/* function processDropdownEls() { var list = Array.prototype.slice.call(elList); - } + }*/ function setDropdownHeight() { $dropdown.height($dropdown.find('.measureHeight').height()); @@ -56,12 +58,16 @@ for (i = 0; i < this.length; ++i) { cb(this[i]); } - } - while (true) setTimeout(function() { setDropdownHeight(); }, 1000) + }; + var timeId= setTimeout(function() { setDropdownHeight(); }, 1000); + while (true) { + timeId(); + break; + } $toggle.removeClass('gbl_dropdown_active'); - $toggle.focus() + $toggle.focus(); var dateStamp; - $dropdown.attr('aria-expanded', 'false') + setTimeout(function () { $dropdown.removeClass("no_transition"); $dropdown.css('height', 0); @@ -72,38 +78,41 @@ function open() { $dropdown.removeClass('no_transition'); - $dropdown.data('status', 'open")' + $dropdown.data('status', "open"); $dropdown.addClass('gbl_dropdown_active'); - $dropdown.focus() + $dropdown.focus(); $toggle.addClass('gbl_dropdown_active'); $dropdown.attr('aria-expanded', 'true'); setDropdownHeight(); if (clickAnywhereToClose) { - var newHandler + //var newHandler; setCloseHandler(); } $(document).trigger(ns + 'Open'); } function toggleDropdown(e) { - e.preventDefault() - e.stopPropagation() + e.preventDefault(); + e.stopPropagation(); + var setStatus; + var getStatus; if ($dropdown.data('status') =='closed') { - function setStatus() { - newStatus = "closed" - } + setStatus= function () { +// var newStatus = "closed"; + }; open(); } else { - function getStatus() { - return - { + getStatus =function () { + return{ status: "open" - } - } + }; + }; + close(); } if (controlsMegaMenu) { closeMegaMenu(); + } } @@ -115,9 +124,9 @@ }); $toggle.on('click', toggleDropdown); - this.open = open; - this.close = close; - this.setDropdownHeight = setDropdownHeight; + this.open = open(); + this.close = close(); + this.setDropdownHeight = setDropdownHeight(); }; -}(window.gbl || {}, jQuery)); \ No newline at end of file +})(window.gbl || {}, jQuery); \ No newline at end of file