source: branches/2.2/jabberit_messenger/js/show_hidden.js @ 5161

Revision 5161, 1.9 KB checked in by alexandrecorreia, 12 years ago (diff)

Ticket #2300 - Corrigido a função que mostra o menu

  • Property svn:executable set to *
Line 
1(function()
2{
3        var _delay;
4        var _event_show         = false;
5        var _event_hidden       = false;
6
7        var _last_displayed;
8        var _timeout            = false;
9
10        function _config(pObj, pEvent, pHandler)
11        {
12                if ( typeof pObj == 'object' )
13                {
14                        if ( pEvent.substring(0, 2) == 'on' )
15                                pEvent = pEvent.substring(2, pEvent.length);
16
17                        if ( pObj.addEventListener )
18                                pObj.addEventListener(pEvent, pHandler, false);
19                        else if ( pObj.attachEvent )
20                                pObj.attachEvent('on' + pEvent, pHandler);
21                }
22        }
23
24        function hdObject()
25        {
26                if( _last_displayed )
27                {
28                        _last_displayed.style.display = 'none';
29                        _last_displayed = false;
30                }
31        }
32
33        function _hidden()
34        {
35                if( arguments.length > 0 )
36                {
37                        if( arguments[0] )
38                                clearTimeout( _timeout );
39                        else
40                        {
41                                _timeout = setTimeout( hdObject, _delay);
42                        }
43                }
44        }
45
46        function _show(_element)
47        {
48                if( !(_last_displayed && ( _last_displayed.id == _element.id )))
49                {
50                        _element.style.display = 'block';
51                        _last_displayed = _element;
52                }
53        }
54
55        function _view()
56        {
57                if ( arguments.length == 3 )
58                {
59                        var _event = [
60                                'onclick',
61                                'onmousedown',
62                                'onmouseout',
63                                'onmouseover',
64                                'onmouseup'
65                        ];
66
67                        _event_show = false;
68                        _event_hidden = false;
69
70                        for ( var i in _event )
71                        {
72                                if ( _event[i] == arguments[0] )
73                                        _event_show = arguments[0];
74
75                                if ( _event[i] == arguments[1] )
76                                        _event_hidden = arguments[1];
77                        }
78
79                        if ( _event_show && _event_hidden )
80                        {
81                                var _element = false;
82                               
83                                switch ( typeof arguments[2] )
84                                {
85                                        case 'object' :
86                                                _element = arguments[2];
87                                        break;
88                                       
89                                        case 'string' :
90                                                _element = document.getElementById(arguments[2]);
91                                        break;
92                                }
93
94                                if ( _element )
95                                        _show(_element);
96                        }
97                }
98        }
99
100        function ShowHidden()
101        {
102                _delay = ( (arguments.length > 0) && !isNaN(arguments[0]) ) ? arguments[0] : 3000;
103        }
104
105       
106        ShowHidden.prototype.action             = _view;
107        ShowHidden.prototype.hiddenObject       = _hidden;
108   
109        window.ShowHidden                                       = ShowHidden;
110   
111})();
Note: See TracBrowser for help on using the repository browser.