Mouseenter and Mouseleave native support in FireFox
For quite a while now, i’ve been trying to get native support for mouseenter/mouseleave JavaScript events included in the Gecko engine used in FireFox and other Gecko-based Web Browsers via a feature request on mozilla bugzilla system (see my mouseenter/mouseleave feature request on bugzilla). Internet Explorer has led the way with native support for mouseenter/mouseleave since version 5.5 (in fact Microsoft invented the mouseenter/mouseleave events) and several JavaScript frameworks have added support for mouseenter/mouseleave such as MooTools.
Mouseenter and mouseleave events are exactly the same as mouseover and mouseout except that they do not bubble i.e. the event is fired only for the element which the mouse cursor is immediately entering/leaving. This is an important distinction which makes construction of, for example animated tree-style menus much simpler.
The latest news (at the time of writing) on the feature request for Gecko is that the team are willing to take a patch to add native support for the mouseenter/mouseleave events. I personally don’t have the experience with XUL to create such a patch but I am hoping that someone reading either this or the feature request will have the skills required. So if you fit the bill and have the time, please consider donating your skills!