nl_tokens: Internal function proxied by Delegate#on
pl_tokens: function handle ( listenerList , root , event ) { var listener , returned , specificList , target ; if ( event [ EVENT_IGNORE ] === true ) { return ; } target = event . target ; if ( target . nodeType === Node . TEXT_NODE ) { target = target . parentNode ; } specificList = listenerList [ event . type ] ; // If the fire function actually causes the specific list to be destroyed, // Need check that the specific list is still populated while ( target && specificList . length > 0 ) { listener = specificList . first ; do { // Check for match and fire the event if there's one // TODO:MCG:20120117: Need a way to check if event#stopImmediateProgagation was called. If so, break both loops. if ( listener . m . call ( target , listener . p , target ) ) { returned = fire ( event , target , listener ) ; } // Stop propagation to subsequent callbacks if the callback returned false if ( returned === false ) { event [ EVENT_IGNORE ] = true ; return ; } listener = listener . next ; // If the fire function actually causes the specific list object to be destroyed, // need a way of getting out of here so check listener is set } while ( listener !== specificList . first && listener ) ; // TODO:MCG:20120117: Need a way to check if event#stopProgagation was called. If so, break looping through the DOM. // Stop if the delegation root has been reached if ( <mask> === root ) { break ; } target = target . parentElement ; } }