[2903] | 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 | // |
---|
[2420] | 17 | ( function( ) |
---|
| 18 | { |
---|
[2903] | 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 |
---|
[2420] | 27 | function config( pObj, pEvent, pHandler ) |
---|
[2903] | 28 | // INPUTS |
---|
| 29 | // pObj : |
---|
| 30 | // pEvent : |
---|
| 31 | // pHandler : |
---|
| 32 | // |
---|
| 33 | // SOURCE |
---|
[2420] | 34 | { |
---|
| 35 | if ( typeof pObj == 'object' ) |
---|
| 36 | { |
---|
[2903] | 37 | if ( pEvent.substring( 0, 2 ) == 'on' ) |
---|
| 38 | pEvent = pEvent.substring( 2, pEvent.length ); |
---|
[2420] | 39 | |
---|
| 40 | if ( arguments.length == 3 ) |
---|
| 41 | { |
---|
| 42 | if ( pObj.addEventListener ) |
---|
[2903] | 43 | pObj.addEventListener( pEvent, pHandler, false ); |
---|
[2420] | 44 | else if ( pObj.attachEvent ) |
---|
| 45 | pObj.attachEvent( 'on' + pEvent, pHandler ); |
---|
[2875] | 46 | |
---|
[2903] | 47 | ( arguments[ 0 ].preventDefault ) ? |
---|
| 48 | arguments[ 0 ].preventDefault( ) : arguments[ 0 ].returnValue = false; |
---|
[2420] | 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 | } |
---|
[2903] | 59 | // |
---|
| 60 | // NOTES |
---|
| 61 | // Ações anÎnimas não podem ser removidas |
---|
| 62 | // |
---|
| 63 | //****** |
---|
[2420] | 64 | |
---|
[2903] | 65 | //****m* XEvents/add |
---|
| 66 | // NAME |
---|
| 67 | // add |
---|
| 68 | // |
---|
| 69 | // DESCRIPTION |
---|
| 70 | // Adiciona uma ação a um objeto ( node ). |
---|
| 71 | // |
---|
| 72 | // SYNOPSIS |
---|
[2420] | 73 | function add( pObj, pEvent, pHandler ) |
---|
[2903] | 74 | // INPUTS |
---|
| 75 | // pObj : |
---|
| 76 | // pEvent : |
---|
| 77 | // pHandler : |
---|
| 78 | // |
---|
[2420] | 79 | { |
---|
| 80 | config( pObj, pEvent, pHandler ); |
---|
| 81 | } |
---|
[2903] | 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 | //****** |
---|
[2420] | 100 | |
---|
[2903] | 101 | //****m* XEvents/remove |
---|
| 102 | // NAME |
---|
| 103 | // remove |
---|
| 104 | // |
---|
| 105 | // DESCRIPTION |
---|
| 106 | // Remove a ação de um objeto ( node ). |
---|
| 107 | // |
---|
| 108 | // SYNOPSIS |
---|
| 109 | |
---|
[2420] | 110 | function remove( pObj, pEvent, pHandler ) |
---|
[2903] | 111 | // INPUTS |
---|
| 112 | // pObj : |
---|
| 113 | // pEvent : |
---|
| 114 | // pHandler : |
---|
| 115 | // |
---|
[2420] | 116 | { |
---|
| 117 | config( pObj, pEvent, pHandler, true ); |
---|
| 118 | } |
---|
[2903] | 119 | // |
---|
| 120 | // NOTES |
---|
| 121 | // Ações anÎnimas não podem ser removidas |
---|
| 122 | // |
---|
| 123 | // EXAMPLE |
---|
| 124 | // XEvents.remove( node, 'onclick', myHandler ); |
---|
| 125 | // |
---|
| 126 | //****** |
---|
[2420] | 127 | |
---|
| 128 | function Events( ) |
---|
| 129 | { |
---|
| 130 | } |
---|
| 131 | |
---|
| 132 | Events.prototype.add = add; |
---|
| 133 | Events.prototype.remove = remove; |
---|
| 134 | |
---|
| 135 | window.XEvents = new Events; |
---|
| 136 | } )( ); |
---|