maida
02-15-2007, 07:24 PM
My client has an existing site with Dreamweaver generated galleries - the ones that change the photo when you mouse over the thumbnail
They would like to add Previous/Next functionality to the gallery as well.
Here's the Dreamweaver code
function MM_findObj(n, d) { //v4.01
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
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];}
}
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_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;
}
The MM_preloadImages already loads all the images for the gallery into an array
The MM_swapImage can change the image.
So I want to set up a nextImage function that:
uses function MM_findObj to find the current image
Find the current image in the MM_p array
swap the current image to the next image in the array
The big question is:
How can I pass the current image into the function?
My test page is here:
http://www.newagaincustomhomes.com/gallery_test.html
I've been working on this for a while and just can't get my head around it.
If you're bored and want to help, I'd appreciate it. Right now, I'm going to the climbing gym to clear my head!
They would like to add Previous/Next functionality to the gallery as well.
Here's the Dreamweaver code
function MM_findObj(n, d) { //v4.01
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
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];}
}
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_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;
}
The MM_preloadImages already loads all the images for the gallery into an array
The MM_swapImage can change the image.
So I want to set up a nextImage function that:
uses function MM_findObj to find the current image
Find the current image in the MM_p array
swap the current image to the next image in the array
The big question is:
How can I pass the current image into the function?
My test page is here:
http://www.newagaincustomhomes.com/gallery_test.html
I've been working on this for a while and just can't get my head around it.
If you're bored and want to help, I'd appreciate it. Right now, I'm going to the climbing gym to clear my head!