// (c) Willy MARIO / Stéphane OLIVIER - MNet - Symphonie 1998/1999
// 
// 2.6 (30/11/1999)

navok = false;
if ((parseInt(navigator.appVersion) >= 3 && (navigator.appName.indexOf('Netscape')!=-1)) || parseInt(navigator.appVersion) >= 4) {
  ImgCollection = new Object;
  navok = true;
}

//*************************************************************************
// AddInCollection : Insertion et preload des deux images/etats d'un bouton
// nom    : nom de l'image
// srcOn  : URL de l'image bouton cliqué
// srcOff : URL de l'image bouton normal
//
//*************************************************************************
function AddInCollection(nom, srcOn, srcOff) {
  if (navok) {
    ImgCollection[nom] = new Object;
    ImgCollection[nom].on = new Image();
    ImgCollection[nom].on.src = srcOn;
    ImgCollection[nom].off = new Image();
    ImgCollection[nom].off.src = srcOff;
  }
}

// flip : enfonce le bouton...
function flip(image) {
  if (navok) {
    img=eval("document." + image);
    img.src=ImgCollection[img.name].on.src;
  }
}

// flop : ... 
function flop(image) {
  if (navok) {
    img=eval("document." + image);
    img.src=ImgCollection[img.name].off.src;
  }
}

// ChangeImgSrc(numframe, image, source) : change l'url source d'une image avec le test...
function changeImgSrc(numframe, image, source) {
  if (navok) {
    nbarg = arguments.length;
    if ((nbarg >= 2) && (nbarg <= 3)) {              // test le nombre de paramètres
      if (nbarg == 3) {                              // il y a 3 paramètres (frame)
        num = eval(numframe) - 1;
        imgname = "window.top.frames[" + num + "].";
      }
      else {                                         // il n'y a que 2 paramètres
        imgname = "";
        source = image;                              // on re affecte les paramètres à leur place
        image = numframe;
      }
      imgname = imgname + "document." + image;
      eval(imgname).src = source;
    }
    else
      alert("Attention, pas assez de paramètres lors de l'appel de changeImgSrc.");
  }
}

//*************************************************************************
//*************************************************************************
//*************************************************************************
/*
//--------------------------cut here :)------------------------------------
<SCRIPT language="JavaScript" src="MWLibs/RollOver.js">
  function flip(image) {}
  function flop(image) {}
  function changeImgSrc(numframe, image, source) {}
  navok = false;
</SCRIPT>
<SCRIPT language="JavaScript">
<!--
// Roll Over (c) Willy MARIO / Stéphane OLIVIER 1999

if (navok) {
  // insert et preload les images 
  AddInCollection('MonImage','../boutonON.gif','../boutonOFF.gif');
}
//-->
</SCRIPT>
//--------------------------stop cut here :)-------------------------------

exemples : 

Et un roolover 1 !
<A	href="#" 
	onMouseOver="flip('MonImage');" 
	onMouseOut ="flop('MonImage');">
	<img name="MonImage"  
		 src="../boutonOFF.gif" 
		 border="0"
	></A>

Et un changement d'image dans le meme document !
<A	href="#"
	onClick="changeImgSrc('nom_de_l_image'), 'source_de_la_nouvelle_image');">
	<B>Changer l'image nom_de_l_image par source_de_la_nouvelle_image</B></A>

Et encore un changement d'image mais dans une autre frame cette fois-ci!
<A	href="#"
        onClick="changeImgSrc('numero_de_la_frame', 'nom_de_l_image', 'source_de_la_nouvelle_image');">
        <B>Changer l'image nom_de_l_image de la frame n° numero_de_la_frame par source_de_la_nouvelle_image</B></A>
*/
