1 | //****c* XTools/XEvents |
---|
2 | // NAME |
---|
3 | // XEvents |
---|
4 | // |
---|
5 | // DESCRIPTION |
---|
6 | // Configura uma ação a ser executada quando ocorrer um determinado evento em um objeto. |
---|
7 | // |
---|
8 | // AUTHOR |
---|
9 | // Rodrigo Souza dos Santos |
---|
10 | // |html <br /><a href="mailto:%72%6f%64%72%69%67%6f%2e%73%6f%75%7a%61%40%63%65%6c%65%70%61%72%2e%70%72%2e%67%6f%76%2e%62%72">rodrigo.souza@celepar.pr.gov.br</a> |
---|
11 | // |html <br /><a href="mailto:%72%6f%64%72%69%67%6f%73%6f%75%7a%61%64%6f%73%73%61%6e%74%6f%73%40%67%6d%61%69%6c%2e%63%6f%6d">rodrigosouzadossantos@gmail.com</a> |
---|
12 | // |
---|
13 | //****** |
---|
14 | // You can use this space for remarks that should not be included |
---|
15 | // in the documentation. |
---|
16 | // |
---|
17 | ( function( ) |
---|
18 | { |
---|
19 | //****im* XEvents/config |
---|
20 | // NAME |
---|
21 | // config |
---|
22 | // |
---|
23 | // DESCRIPTION |
---|
24 | // Configura ( adiciona ou remove ) uma ação a um objeto ( node ). |
---|
25 | // |
---|
26 | // SYNOPSIS |
---|
27 | function config( pObj, pEvent, pHandler ) |
---|
28 | // INPUTS |
---|
29 | // pObj : |
---|
30 | // pEvent : |
---|
31 | // pHandler : |
---|
32 | // |
---|
33 | // SOURCE |
---|
34 | { |
---|
35 | if ( typeof pObj == 'object' ) |
---|
36 | { |
---|
37 | if ( pEvent.substring( 0, 2 ) == 'on' ) |
---|
38 | pEvent = pEvent.substring( 2, pEvent.length ); |
---|
39 | |
---|
40 | if ( arguments.length == 3 ) |
---|
41 | { |
---|
42 | if ( pObj.addEventListener ) |
---|
43 | pObj.addEventListener( pEvent, pHandler, false ); |
---|
44 | else if ( pObj.attachEvent ) |
---|
45 | pObj.attachEvent( 'on' + pEvent, pHandler ); |
---|
46 | |
---|
47 | ( arguments[ 0 ].preventDefault ) ? |
---|
48 | arguments[ 0 ].preventDefault( ) : arguments[ 0 ].returnValue = false; |
---|
49 | } |
---|
50 | else if ( arguments.length == 4 ) |
---|
51 | { |
---|
52 | if ( pObj.removeEventListener ) |
---|
53 | pObj.removeEventListener( pEvent, pHandler, false ); |
---|
54 | else if ( pObj.detachEvent ) |
---|
55 | pObj.detachEvent( 'on' + pEvent, pHandler ); |
---|
56 | } |
---|
57 | } |
---|
58 | } |
---|
59 | // |
---|
60 | // NOTES |
---|
61 | // Ações anÎnimas não podem ser removidas |
---|
62 | // |
---|
63 | //****** |
---|
64 | |
---|
65 | //****m* XEvents/add |
---|
66 | // NAME |
---|
67 | // add |
---|
68 | // |
---|
69 | // DESCRIPTION |
---|
70 | // Adiciona uma ação a um objeto ( node ). |
---|
71 | // |
---|
72 | // SYNOPSIS |
---|
73 | function add( pObj, pEvent, pHandler ) |
---|
74 | // INPUTS |
---|
75 | // pObj : |
---|
76 | // pEvent : |
---|
77 | // pHandler : |
---|
78 | // |
---|
79 | { |
---|
80 | config( pObj, pEvent, pHandler ); |
---|
81 | } |
---|
82 | // |
---|
83 | // NOTES |
---|
84 | // Ações anÎnimas não podem ser removidas |
---|
85 | // |
---|
86 | // EXAMPLE |
---|
87 | // function myHandler( ) |
---|
88 | // { |
---|
89 | // /*do something*/ |
---|
90 | // } |
---|
91 | // |
---|
92 | // XEvents.add( node, 'onclick', myHandler ); |
---|
93 | // |
---|
94 | // XEvents.add( node, "onclick", function( ) |
---|
95 | // { |
---|
96 | // /*do something*/ |
---|
97 | // } ); |
---|
98 | // |
---|
99 | //****** |
---|
100 | |
---|
101 | //****m* XEvents/remove |
---|
102 | // NAME |
---|
103 | // remove |
---|
104 | // |
---|
105 | // DESCRIPTION |
---|
106 | // Remove a ação de um objeto ( node ). |
---|
107 | // |
---|
108 | // SYNOPSIS |
---|
109 | |
---|
110 | function remove( pObj, pEvent, pHandler ) |
---|
111 | // INPUTS |
---|
112 | // pObj : |
---|
113 | // pEvent : |
---|
114 | // pHandler : |
---|
115 | // |
---|
116 | { |
---|
117 | config( pObj, pEvent, pHandler, true ); |
---|
118 | } |
---|
119 | // |
---|
120 | // NOTES |
---|
121 | // Ações anÎnimas não podem ser removidas |
---|
122 | // |
---|
123 | // EXAMPLE |
---|
124 | // XEvents.remove( node, 'onclick', myHandler ); |
---|
125 | // |
---|
126 | //****** |
---|
127 | |
---|
128 | function Events( ) |
---|
129 | { |
---|
130 | } |
---|
131 | |
---|
132 | Events.prototype.add = add; |
---|
133 | Events.prototype.remove = remove; |
---|
134 | |
---|
135 | window.XEvents = new Events; |
---|
136 | } )( ); |
---|