3 * Copyright(c) 2006-2010 Ext JS, LLC
5 * http://www.extjs.com/license
7 Ext.onReady(function(){
\r
11 function createMenu(name){
\r
12 var el = Ext.get(name+'-link');
\r
13 var tid = 0, menu, doc = Ext.getDoc();
\r
15 var handleOver = function(e, t){
\r
16 if(t != el.dom && t != menu.dom && !e.within(el) && !e.within(menu)){
\r
21 var hideMenu = function(){
\r
24 el.setStyle('text-decoration', '');
\r
25 doc.un('mouseover', handleOver);
\r
26 doc.un('mousedown', handleDown);
\r
30 var handleDown = function(e){
\r
31 if(!e.within(menu)){
\r
36 var showMenu = function(){
\r
41 menu = new Ext.Layer({shadow:'sides',hideMode: 'display'}, name+'-menu');
\r
43 menu.hideMenu = hideMenu;
\r
46 if(activeMenu && menu != activeMenu){
\r
47 activeMenu.hideMenu();
\r
51 if (!menu.isVisible()) {
\r
53 menu.alignTo(el, 'tl-bl?');
\r
55 el.setStyle('text-decoration', 'underline');
\r
57 doc.on('mouseover', handleOver, null, {buffer:150});
\r
58 doc.on('mousedown', handleDown);
\r
62 el.on('mouseover', function(e){
\r
64 tid = showMenu.defer(150);
\r
68 el.on('mouseout', function(e){
\r
69 if(tid && !e.within(el, true)){
\r
76 createMenu('products');
\r
77 createMenu('support');
\r
78 createMenu('store');
\r
81 Ext.getBody().on('click', function(e, t){
\r
85 var bd = t.next('div.expandable-body');
\r
86 bd.enableDisplayMode();
\r
87 var bdi = bd.first();
\r
88 var expanded = bd.isVisible();
\r
95 bdi.slideIn('l', {duration:0.2, stopFx: true, easing:'easeOut'});
\r
98 t.update(!expanded ? 'Hide details' : 'Show details');
\r
100 }, null, {delegate:'a.expander'});
\r