MCPcopy Index your code
hub / github.com/dataarts/dat.gui / liveHandler

Function liveHandler

tests/jquery.js:3655–3741  ·  view source on GitHub ↗
( event )

Source from the content-addressed store, hash-verified

3653});
3654
3655function liveHandler( event ) {
3656 var stop, maxLevel, related, match, handleObj, elem, j, i, l, data, close, namespace, ret,
3657 elems = [],
3658 selectors = [],
3659 events = jQuery._data( this, "events" );
3660
3661 // Make sure we avoid non-left-click bubbling in Firefox (#3861) and disabled elements in IE (#6911)
3662 if ( event.liveFired === this || !events || !events.live || event.target.disabled || event.button && event.type === "click" ) {
3663 return;
3664 }
3665
3666 if ( event.namespace ) {
3667 namespace = new RegExp("(^|\\.)" + event.namespace.split(".").join("\\.(?:.*\\.)?") + "(\\.|$)");
3668 }
3669
3670 event.liveFired = this;
3671
3672 var live = events.live.slice(0);
3673
3674 for ( j = 0; j < live.length; j++ ) {
3675 handleObj = live[j];
3676
3677 if ( handleObj.origType.replace( rnamespaces, "" ) === event.type ) {
3678 selectors.push( handleObj.selector );
3679
3680 } else {
3681 live.splice( j--, 1 );
3682 }
3683 }
3684
3685 match = jQuery( event.target ).closest( selectors, event.currentTarget );
3686
3687 for ( i = 0, l = match.length; i < l; i++ ) {
3688 close = match[i];
3689
3690 for ( j = 0; j < live.length; j++ ) {
3691 handleObj = live[j];
3692
3693 if ( close.selector === handleObj.selector && (!namespace || namespace.test( handleObj.namespace )) && !close.elem.disabled ) {
3694 elem = close.elem;
3695 related = null;
3696
3697 // Those two events require additional checking
3698 if ( handleObj.preType === "mouseenter" || handleObj.preType === "mouseleave" ) {
3699 event.type = handleObj.preType;
3700 related = jQuery( event.relatedTarget ).closest( handleObj.selector )[0];
3701
3702 // Make sure not to accidentally match a child element with the same selector
3703 if ( related && jQuery.contains( elem, related ) ) {
3704 related = elem;
3705 }
3706 }
3707
3708 if ( !related || related !== elem ) {
3709 elems.push({ elem: elem, handleObj: handleObj, level: close.level });
3710 }
3711 }
3712 }

Callers

nothing calls this directly

Calls 1

jQueryFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…