maps.nyc.gov

Source: menu.js

var nyc = nyc || {};

/**
 * @desc Abstract class that menu toggling control
 * @public
 * @abstract
 * @class
 * @constructor
 */
nyc.Menu = function(){};

nyc.Menu.prototype = {
	/**
	 * @desc The HTML DOM element that is the menu container
	 * @public
	 * @member {Element} type 
	 */
	menu: null,
	/**
	 * @desc Close all other menus and toggle this menu
	 * @public
	 * @method
	 * @param {function()=} callback
	 */
	toggleMenu: function(callback){
		callback = callback || function(){};
		var mnu = this.menu;
		if (mnu){
			var open = $('.ctl-mnu-tgl:visible').not($(mnu));
			if (open.length){
				open.slideUp(function(){
					$(mnu).slideToggle(callback);
				});						
			}else{
				$(mnu).slideToggle(callback);
			}
		}
	}
};

nyc-lib: Source: menu.js

maps.nyc.gov

Source: menu.js

var nyc = nyc || {};

/**
 * @desc Abstract class that menu toggling control
 * @public
 * @abstract
 * @class
 * @constructor
 */
nyc.Menu = function(){};

nyc.Menu.prototype = {
	/**
	 * @desc The HTML DOM element that is the menu container
	 * @public
	 * @member {Element} type 
	 */
	menu: null,
	/**
	 * @desc Close all other menus and toggle this menu
	 * @public
	 * @method
	 * @param {function()=} callback
	 */
	toggleMenu: function(callback){
		callback = callback || function(){};
		var mnu = this.menu;
		if (mnu){
			var open = $('.ctl-mnu-tgl:visible').not($(mnu));
			if (open.length){
				open.slideUp(function(){
					$(mnu).slideToggle(callback);
				});						
			}else{
				$(mnu).slideToggle(callback);
			}
		}
	}
};