event-focus-debug.js revision fb83a09fe023a741781ee955f4e9538d3cbe21a2
/**
* Adds bubbling and delegation support to DOM events focus and blur.
*
* @module event
* @submodule event-focus
*/
}, el]);
} else {
{ capture: true });
}
},
// Maintain a list to handle subscriptions from nested
// containers div#a>div#b>input #a.on(focus..) #b.on(focus..),
// use one focus or blur subscription that fires notifiers from
// #b then #a to emulate bubble sequence.
if (!notifiers) {
notifiers = {};
// only subscribe to the element's focus if the target is
// not the current target (
if (defer) {
}
}
}
if (!defer) {
this._notify(e);
}
}
},
var node = e.currentTarget,
// document.get('ownerDocument') returns null
nots = [],
if (notifiers) {
// Walk up the parent axis until the origin node,
}
} else {
delete e.container;
}
}
// clear the notifications list (mainly for delegation)
}
},
},
},
}
},
}
}, true);
}
// For IE, we need to defer to focusin rather than focus because
// `el.focus(); doSomething();` executes el.onbeforeactivate, el.onactivate,
// el.onfocusin, doSomething, then el.onfocus. All others support capture
// phase focus, which executes before doSomething. To guarantee consistent
// behavior for this use case, IE's direct subscriptions are made against
// focusin so subscribers will be notified before js following el.focus() is
// executed.
if (useActivate) {
// name capture phase direct subscription
} else {
}