corrade-nucleus-nucleons – Blame information for rev 20

Subversion Repositories:
Rev:
Rev Author Line No. Line
20 office 1 define([
2 "../core"
3 ], function( jQuery ) {
4  
5 // Multifunctional method to get and set values of a collection
6 // The value/s can optionally be executed if it's a function
7 var access = jQuery.access = function( elems, fn, key, value, chainable, emptyGet, raw ) {
8 var i = 0,
9 len = elems.length,
10 bulk = key == null;
11  
12 // Sets many values
13 if ( jQuery.type( key ) === "object" ) {
14 chainable = true;
15 for ( i in key ) {
16 jQuery.access( elems, fn, i, key[i], true, emptyGet, raw );
17 }
18  
19 // Sets one value
20 } else if ( value !== undefined ) {
21 chainable = true;
22  
23 if ( !jQuery.isFunction( value ) ) {
24 raw = true;
25 }
26  
27 if ( bulk ) {
28 // Bulk operations run against the entire set
29 if ( raw ) {
30 fn.call( elems, value );
31 fn = null;
32  
33 // ...except when executing function values
34 } else {
35 bulk = fn;
36 fn = function( elem, key, value ) {
37 return bulk.call( jQuery( elem ), value );
38 };
39 }
40 }
41  
42 if ( fn ) {
43 for ( ; i < len; i++ ) {
44 fn( elems[i], key, raw ? value : value.call( elems[i], i, fn( elems[i], key ) ) );
45 }
46 }
47 }
48  
49 return chainable ?
50 elems :
51  
52 // Gets
53 bulk ?
54 fn.call( elems ) :
55 len ? fn( elems[0], key ) : emptyGet;
56 };
57  
58 return access;
59  
60 });