buenas,
es cierto que focus al igual que otros eventos no burbujean. sin embargo, ¿cómo lo hace jquery? la verdad no lo sé y tampoco he revisado muy bien el código fuente. no obstante, asumo yo que el truco esta en el método de captura. es decir, en lugar de capturar el evento en la fase bubble, se captura en la fase capture el cual es cuando el objeto se propaga desde el nivel más alto en la jerarquía (usualmente self) hasta llegar al elemento que lo inicio. esto se logra indicando true en el tercer argumento de addEventListener. por desgracia, iexplorer tiene un modelo distinto el cual no comprende los diferentes tipos de fases y solo admite bubbling. desconozco si esto ha cambiado en las últimas versiones de iexplorer, al menos en el 8 sigue siendo el modelo de siempre. supongo que en teoría eso es lo que hace jquery y quizas con algo adicional para darle soporte a iexplorer. si miras el código fuente de
jquery sin compresar, busca un comentario que cita
// Create "bubbling" focus and blur events. como no tengo ánimo de interpretar el código jquery, pues no estoy seguro si lo antes explicado es como jquery lo implementa.
sobre la segunda duda, como de costumbre, recuerda poner un enlace de una copia reciente de JPlus. seguro han habido cambios. más que nada para que otros puedan realizar las pruebas.