nl_tokens: @file fn . js @module fn Bind ( a . k . a proxy or Context ) . A simple method for changing the context of a function It also stores a unique id on the function so it can be easily removed from events .
pl_tokens: function bind ( context , fn , uid ) { // Make sure the function has a unique ID if ( ! fn . guid ) { fn . guid = newGUID ( ) ; } // Create the new function that changes the context var bound = function <mask> ( ) { return fn . apply ( context , arguments ) ; } ; // Allow for the ability to individualize this function // Needed in the case where multiple objects might share the same prototype // IF both items add an event listener with the same function, then you try to remove just one // it will remove both because they both have the same guid. // when using this, you need to use the bind method when you remove the listener as well. // currently used in text tracks bound . guid = uid ? uid + '_' + fn . guid : fn . guid ; return bound ; }