// if data is passed, bind to handler
if( data != undefined ) {
// if data is passed, bind to handler
if( data != undefined ) {
while ( parent && parent != this ) try { parent = parent.parentNode; } catch(error) { parent = this; };
// If we actually just moused on to a sub-element, ignore it
while ( parent && parent != this ) try { parent = parent.parentNode; } catch(error) { parent = this; };
// If we actually just moused on to a sub-element, ignore it
// Execute the right function
return (event.type == "mouseover" ? fnOver : fnOut).apply(this, [event]);
// Execute the right function
return (event.type == "mouseover" ? fnOver : fnOut).apply(this, [event]);