the ready not working properly in Opera, safari and chrome

the ready not working properly in Opera, safari and chrome

<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
</style>
</head>
<body class='hmmessage'>
<style>.ExternalClass .EC_hmmessage P
{padding:0px;}
.ExternalClass body.EC_hmmessage
{font-size:10pt;font-family:Verdana;}
</style>
Hello.
I discovered some time ago that in browsers based on
WebKit, the ready not working properly. Looking into the code
of jQuery 1.3.1 in binready I noticed it was missing the code. Because
it tests only for IE and mozilla. It does not test for Opera, Safari
and Chrome.
I analyzed the version 1.2.6 and the bindready code has changed,
result, in opera, safari and chrome, the ready does not work
properly (stylesheets are loaded after the page content)
Could you give me an alternative to not put the code of 1.2.6 in 1.3.1?
Here is the code I changed. The ready work correctly with these changes :
// Figure out what browser is being used
jQuery.browser = {
    version: (userAgent.match( /.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/ ) || [0,'0'])[1],
    safari: /webkit/.test( userAgent ),
    opera: /opera/.test( userAgent ),
    msie: /msie/.test( userAgent ) && !/opera/.test( userAgent ),
    mozilla: /mozilla/.test( userAgent ) && !/(compatible|webkit)/.test( userAgent ),
    language: navigator.language? navigator.language : navigator.userLanguage,
    chrome : /chrome/.test(navigator.userAgent.toLowerCase())
};
function bindReady(){
if ( readyBound ) return;
        readyBound = true;
        // Mozilla, Opera (see further below for it) and webkit nightlies currently support this event
       
if ( document.addEventListener && !jQuery.browser.opera
&& !jQuery.browser.safari && !jQuery.browser.chrome)
                // Use the handy event callback
                document.addEventListener( "DOMContentLoaded", jQuery.ready, false );
        // If IE is used and is not in a frame
        // Continually check to see if the document is ready
        if ( jQuery.browser.msie && window == top ) (function(){
                if (jQuery.isReady) return;
                try {
                        // If IE is used, use the trick by Diego Perini
                        // http://javascript.nwbox.com/IEContentLoaded/
                        document.documentElement.doScroll("left");
                } catch( error ) {
                        setTimeout( arguments.callee, 0 );
                        return;
                }
                // and execute any waiting functions
                jQuery.ready();
        })();
        if ( jQuery.browser.opera )
                document.addEventListener( "DOMContentLoaded", function () {
                        if (jQuery.isReady) return;
                        for (var i = 0; i < document.styleSheets.length; i++)
                                if (document.styleSheets[i].disabled) {
                                        setTimeout( arguments.callee, 0 );
                                        return;
                                }
                        // and execute any waiting functions
                        jQuery.ready();
                }, false);
        if ( jQuery.browser.safari || jQuery.browser.chrome) {
                var numStyles;
                (function(){
                        if (jQuery.isReady) return;
                        if ( document.readyState != "loaded" && document.readyState != "complete" ) {
                                setTimeout( arguments.callee, 0 );
                                return;
                        }
                        if ( numStyles === undefined )
                                numStyles = jQuery("style, link[rel=stylesheet]").length;
                        if ( document.styleSheets.length != numStyles ) {
                                setTimeout( arguments.callee, 0 );
                                return;
                        }
                        // and execute any waiting functions
                        jQuery.ready();
                })();
        }
        // A fallback to window.onload, that will always work
        jQuery.event.add( window, "load", jQuery.ready );
}
Thank you in advance.
<a href="http://www.microsoft.com/windows/windowslive/default.aspx">
</a><br /><hr />Votre correspondant a choisi Hotmail et profite d'un stockage quasiment illimité. <a href='http://www.windowslive.fr/hotmail/default.asp' target='_new'> Créez un compte Hotmail gratuitement !</a>