function MM_preloadImages() { //v3.0 - lädt die als Parameter übergebenen Bilder in den Cache
    var d=document; 
    if( d.images )
    { 
        if( !d.MM_p ) 
            d.MM_p=new Array();
        var i, j=d.MM_p.length, a=MM_preloadImages.arguments; 
        for( i=0; i<a.length; i++ )
            if( a[i].indexOf("#") != 0)
            { 
                d.MM_p[j]=new Image; 
                d.MM_p[j++].src=a[i];
            }
    }
}

function MM_swapImgRestore() { //v3.0 - stellt das ursprüngliche Bild wieder her
    var i, x, a=document.MM_sr; 
    for( i=0; a && i<a.length && (x=a[i]) && x.oSrc; i++ ) 
        x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01 - wird von MM_swapImage() zur Objektsuche benutzt
    var p, i, x;  
    if( !d ) 
        d=document; 
    if( (p=n.indexOf("?"))>0 && parent.frames.length ) 
    {
        d=parent.frames[n.substring(p+1)].document; 
        n=n.substring(0,p);
    }
    if( !(x=d[n]) && d.all ) 
        x=d.all[n]; 
    for( i=0; !x && i<d.forms.length; i++ ) 
        x=d.forms[i][n];
    for( i=0; !x && d.layers && i<d.layers.length;i++ ) 
        x=MM_findObj( n, d.layers[i].document );
    if( !x && d.getElementById ) 
        x=d.getElementById(n); 
    return x;
}

function MM_swapImage() { //v3.0 - tauscht das ursprüngliche Bild gegen das Angegebene aus
    var i, j=0, x, a=MM_swapImage.arguments; 
    document.MM_sr=new Array; 
    for( i=0; i<(a.length-2); i+=3 )
        if( (x=MM_findObj(a[i])) != null )
        {
            document.MM_sr[j++]=x; 
            if( !x.oSrc ) 
                x.oSrc=x.src; 
            x.src=a[i+2];
        }
}

/* Beispiel:

<body onLoad="MM_preloadImages('img/over-button01.gif','img/over-button02.gif', ...)">
...
<a href="page01.htm" 
   onmouseover="MM_swapImage( 'p01', '', 'img/over-button01.gif', 1 )" 
   onmouseout="MM_swapImgRestore()">
<img src="img/button01.gif" alt="Page 1" name="p01">
</a>

*/
