Behaviours.TopNav = {
	'#mainnav .nav-item': {
		'mouseover': function() {
			var NAV_ITEM = this;
			$('doc-header').getElementsBySelector('.nav .nav-item').each(function() { this.removeClass('selected'); });
			clearTimeout(this._hideSubNavTimer);
			var aSubnav = this.getElementsBySelector('> .subnav');
			this.appendClass('selected');
			if (!aSubnav) return;
			aSubnav.each(function() { 
				if (!(OS.isMac && Browser.isFirefox) && !NAV_ITEM.shown) {
					NAV_ITEM.shown = true;
					$(this).setStyle({opacity: 0}).transformStyleSet({opacity: '0.9'}, {duration: 200});
				}
			});
		},
		'mouseout': function() {
			var NAV_ITEM = this;
			if (this.getElementsBySelector('.subnav')) {
				this._hideSubNavTimer = setTimeout(function () { NAV_ITEM.removeClass('selected'); NAV_ITEM.shown = false; }, 400);
			} else {
				NAV_ITEM.removeClass('selected'); NAV_ITEM.shown = false;
			}
		}
	}
}

Behaviours.SideNav = {
	'#sidenav li.opened > a': {
		'click': function(e) {
			Event.cancel(e);
			var parentNode = $(this.parentNode);
			if (parentNode.hasClass('opened')) {
				parentNode.removeClass('opened');
			} else {
				parentNode.appendClass('opened');
			}
		}
	}
}