Click to See Complete Forum and Search --> : Help displaying two images on rollover


John Baltz
04-15-2003, 11:31 AM
I have a web site that has two differnt scripts for displaying the rollovers on buttons, one is nice and compact the other very long and wordy. I am trying to create a common js include file, so I am trying to convert the longer script pages to the shorter generic code. The one problem I have reached is that several of the pages have a definition area that displays as the user moses over the button. This is done by calling both the button highlight image and the definition image at the same time from the mouseover call. the problem is that I am uncertain as to how to call two images with the following js.


Here is the code I would like to use:

function MM_swapImgRestore() { //v3.0
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_preloadImages() { //v3.0
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_findObj(n, d) { //v3.0
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); return x;
}

function MM_swapImage() { //v3.0
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];}
}



Currently I use the following html on the buttons:

<a HREF="classes/current/current.shtml" TARGET="SubMain_Window" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Button One','','images/selection1b.gif',1)"><img name="Button One" border="0" src="images/selection1a.gif"></a>


Can anyone help me find a way to call and replace to images at a time as the user mouses over the menu?

Vladdy
04-15-2003, 11:41 AM
Here is an example of how to display/replace all you want on rollover:
http://server.ime.uri.edu/EMRL

John Baltz
04-15-2003, 11:55 AM
The above url does what I am looking to do, but I was hoping to use a more generic script. My goal is to have a generic script like the one in the original post that will work for all the pages and to feed the images to the script in the html. I have over thiry pages that each have difernet images, and I would like to try and keep from naming the images in the script itsself so that I can use one script for all the pages.

In the above url, the school writes all the image file names into the script, instead of calling them from the page.