This article offers a list of important bug fixes offered by Firefox 3 that are not necessarily obvious in the documentation.
- if an error occurs parsing an overlay, the overlay is not applied. Parse errors are logged to the error console. (Firefox bug 335755)
- bug fixed where
<menupopup>elements can be placed inside a binding when attached to a menu or menu-like element. (Firefox bug 345896)
- the button's
dlgTypeproperty now works properly. (Firefox bug 308591)
event.initEventnow works properly so that events can be fired which don't bubble. (Firefox bug 330190)
DOMAttrModifiedevent now handles namespaced attributes properly. (Firefox bug 362391)
- XML processing instructions, such as
<?xml-stylesheet ?>, are now added to a XUL document's DOM. This means
document.firstChildisn't guaranteed to be the root element, use
<?xul-overlay ?>processing instructions now have no effect outside the document prolog. (Firefox bug 319654)
getElementsByAttributeNS()functions have been added to XUL elements and documents. (Firefox bug 239976)
- event listeners are maintained when moving or removing an element from a XUL document. (Firefox bug 286619)
- mutation events are now fired for non-displayed documents. (Firefox bug 201236)
- various issues with elements drawing in the wrong order are fixed. (Firefox bug 317375)
getElementsByTagName()has been fixed to work correctly on subtrees that have elements with namespace prefixes in their tag names (Firefox bug 206053).
DOMNodeRemovedevents now properly apply to the correct nodes (Firefox bug 367164).
\d, one of special characters in regular expressions, has been fixed to match only Basic Latin alphabet digits (equivalent to
[0-9]). (Firefox bug 378738)
- The image-sniffing-services category allows for image decoders implemented as extensions to correctly decode images sent with incorrect mime-types. (Firefox bug 391667)
- Right-clicks on form controls no longer brings up a context menu by default (Firefox bug 404536. See Offering a context menu for form controls to learn how to enable this on a case-by-case basis.