ブラウザのキャッシュ (Back-Forward Cache) が働いているとき、loadイベントは発生しません。Using Firefox 1.5 caching | MDN
このイベントは、次の要素などでサポートされます。onload Event | W3Schools
Windowオブジェクトのonloadイベントハンドラに、JavaScriptコードを登録します。
window.onload = function()
{
};
			これはHTMLで、body要素のonload属性に設定することと同義です。
前述の方法では先にonloadイベントが登録されていると、それを上書きして消してしまいます。よって複数のイベントが登録されることが想定されるならば、次のようにイベントを追加すべきです。
if( window.addEventListener )
{
    window.addEventListener( 'load', Func, false );
}
else if( window.attachEvent )
{
    window.attachEvent( 'onload', Func );
}
else
{
    window.onload = Func;
}
			なお、これはクロスブラウザに対応したイベントの実装によるものです。
Documentオブジェクトのbodyプロパティの属性として、
document.body.onload = function()
{
};
			のように記述すると、ブラウザによって挙動が異なることがあります。よって前述のように、windowオブジェクトを用いるべきです。
スタイルシートや画像、それにフレームの読み込み完了を待つ必要がないならば、DOMContentLoadedイベントを使用します。
document.addEventListener( 'DOMContentLoaded', function()
    {
        //
    }, false );
			このイベントとloadイベントとの違いは、Internet Explorer Test Driveで確認できます。
ところでページ読み込み後にドキュメントを変更する場合、その変更の完了はsetTimeout()で0秒後に関数を呼び出すことで実現できます。
DOMContentLoadedが実装されていない環境 (IE9より前) 向けには、doScroll()で代用する方法があります。これはドキュメントの読み込み前にdoScroll()を呼び出すと例外が発生することを応用した方法で、例外を発生しなくなるまでdoScroll()をくり返し呼びます。IEContentLoaded - An alternative for DOMContenloaded on Internet Explorer
( function()
{
    try
    {
        document.documentElement.doScroll( 'left' );
    }
    catch( e )
    {
        // 例外が発生しなくなるまで、再帰的に呼び出す
        setTimeout( arguments.callee, 10 );
        return;
    }
    // ここで読み込み完了後の処理を行う。
} )();
		
function Init()
{
    // 読み込み完了後の処理
}
if( document.addEventListener )
{
    document.addEventListener( 'DOMContentLoaded', Init, false );
}
else if( document.attachEvent )
{
    // DOMContentLoadedがサポートされない環境 (IE9より前) 向け
    var CheckReadyState = function()
    {
        if( document.readyState == 'complete' )
        {
            document.detachEvent( 'onreadystatechange', CheckReadyState );
            Init();
        }
    }
    document.attachEvent( 'onreadystatechange', CheckReadyState );
    ( function()
    {
        try
        {
            document.documentElement.doScroll( 'left' );
        }
        catch( e )
        {
            setTimeout( arguments.callee, 10 );
            return;
        }
        document.detachEvent( 'onreadystatechange', CheckReadyState );
        Init();
    } )();
}
else
{
    // attachEvent()すらもサポートされない環境 (?) 向け
    Init();
}