MCPcopy
hub / github.com/babysor/MockingBird / on

Function on

web/static/js/jquery.js:5125–5184  ·  view source on GitHub ↗
( elem, types, selector, data, fn, one )

Source from the content-addressed store, hash-verified

5123}
5124
5125function on( elem, types, selector, data, fn, one ) {
5126 var origFn, type;
5127
5128 // Types can be a map of types/handlers
5129 if ( typeof types === "object" ) {
5130
5131 // ( types-Object, selector, data )
5132 if ( typeof selector !== "string" ) {
5133
5134 // ( types-Object, data )
5135 data = data || selector;
5136 selector = undefined;
5137 }
5138 for ( type in types ) {
5139 on( elem, type, selector, data, types[ type ], one );
5140 }
5141 return elem;
5142 }
5143
5144 if ( data == null && fn == null ) {
5145
5146 // ( types, fn )
5147 fn = selector;
5148 data = selector = undefined;
5149 } else if ( fn == null ) {
5150 if ( typeof selector === "string" ) {
5151
5152 // ( types, selector, fn )
5153 fn = data;
5154 data = undefined;
5155 } else {
5156
5157 // ( types, data, fn )
5158 fn = data;
5159 data = selector;
5160 selector = undefined;
5161 }
5162 }
5163 if ( fn === false ) {
5164 fn = returnFalse;
5165 } else if ( !fn ) {
5166 return elem;
5167 }
5168
5169 if ( one === 1 ) {
5170 origFn = fn;
5171 fn = function( event ) {
5172
5173 // Can use an empty set, since event contains the info
5174 jQuery().off( event );
5175 return origFn.apply( this, arguments );
5176 };
5177
5178 // Use same guid so caller can remove using origFn
5179 fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );
5180 }
5181 return elem.each( function() {
5182 jQuery.event.add( this, types, fn, data, selector );

Callers 1

jquery.jsFile · 0.85

Calls 1

jQueryFunction · 0.85

Tested by

no test coverage detected