This is only needed in multi-document environments like iframes, new window.open or created documents, where the window, source of the event, may be different each time.
For Internet Explorer jQuery uses attachEvent, so if attachEvent is really able to always pass a correctly sourced event we shouldn't need this (current jquery):
event = jQuery.event.fix( event || window.event || {} );
but this instead:
event = jQuery.event.fix( event );
If instead there are known cases where event may be "null" or "undefined" then the above line should be fixed as follow:
event = jQuery.event.fix( event || ((this.ownerDocument || this.document || this).parentWindow || window).event );
This is the related discussion on the "jquery-dev" group:
http://groups.google.com/group/jquery-dev/browse_thread/thread/b87638ba86f03fe5