Billede slideshow
Hej.Jeg har fundet dette super javascript til håndtering af et slideshow.
Jeg drømmer nu om:
1. I bunden har jeg det <img>-tag som slideshowet køre I, her vil jeg gerne have "load-billedet", altså det der vises inden slideshowet starter bliver loadet først så det bliver vist inden den går i gang med load af andre billeder.
2. Kan man ikke fikse det, så når de 2 første billeder er loadet ind begynder den at vise mens den loader videre.
//mtrolle
<script LANGUAGE="JavaScript">
<!--
var slideShowSpeed = 4000
var crossFadeDuration = 4
var t
var SlideShowj = 0
var preLoad = new Array()
var Pic = new Array('/files/print_img.php?fil=21&height=500&width=570','/files/print_img.php?fil=181&height=500&width=570','/files/print_img.php?fil=24&height=500&width=570','/files/print_img.php?fil=78&height=500&width=570')
var p = Pic.length
for (i = 0; i < p; i++) {
preLoad[i] = new Image();
preLoad[i].src = Pic[i];
}
if ( navigator.appName.indexOf("Microsoft")!=-1 && navigator.appVersion.indexOf("5.5")> -1 || navigator.appVersion.indexOf("7.")> -1 || navigator.appVersion.indexOf("6.")> -1 || navigator.appVersion.indexOf("8.")> -1) {
opas = true;
} else {
opas = false;
}
function runSlideShow() {
if (document.all && opas == true ) {
document.images.SlideShow.style.filter='blendTrans(duration='+crossFadeDuration+')'
document.images.SlideShow.filters.blendTrans.Apply();
}
document.images.SlideShow.src = preLoad[SlideShowj].src;
if (document.all && opas == true ) {
document.images.SlideShow.filters.blendTrans.Play();
}
SlideShowj = SlideShowj + 1;
if (SlideShowj > (p - 1)) SlideShowj = 0;
t = setTimeout('runSlideShow()', slideShowSpeed);
}
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) { //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];}
}
//-->
</script>
<div style="text-align:center;">
<img src="/imgs/slideshow_loades.gif" name="SlideShow" />
</div>
<script LANGUAGE="JavaScript">
x = setTimeout('runSlideShow()', 2000)
</script>
