Avatar billede prop46 Nybegynder
30. december 2007 - 16:35 Der er 6 kommentarer og
1 løsning

første billede i slideshow

Har fundet roenving's slideshow her på experten, men når jeg kører det IE starter det som om det ikke kan vise det første billede.... altså som det ser ud hvis man beder browseren om at vise et billede, som ikke kan findes. Det er selvf. lidt problematisk, men aner ikke hvad jeg gør for at udbedre det.

Koden følger herunder:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Fade slideshow</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
var slideshow_width='120px'; //SET IMAGE WIDTH
var slideshow_height='97px'; //SET IMAGE HEIGHT
var pause=3000; //SET PAUSE BETWEEN SLIDE (3000=3 seconds)
var fadeimages=new Array();
fadeimages[0] = 'projekter/eks1.jpg'
fadeimages[1] = 'projekter/eks2.jpg'
fadeimages[2] = 'projekter/eks3.jpg'
fadeimages[3] = 'projekter/eks4.jpg'
fadeimages[4] = 'projekter/eks5.jpg'
fadeimages[5] = 'projekter/eks6.jpg'
var slidelength = fadeimages.length,curcanvas,curimageindex;
var preloadedimages=new Array();
  for (p=0;slidelength>p;p++){
    preloadedimages[p]=new Image();
    preloadedimages[p].src=fadeimages[p];
  }
function shuffleArray(a) {
var t=s=0;
  for(var i=0;a.length>i;i++){
  t = Math.floor(Math.random()*a.length);
  s = a[i];
  a[i] = a[t] ;
  a[t] = s;
  }
return a;
}
var ix = new Array();
for(i=0;slidelength>i;i++)ix[i]=i;
ix = shuffleArray(ix);
var OpC = new Array();
var ie = (document.all)?true:false;
var moz = (navigator.userAgent.indexOf("Gecko")>-1)
function startOpChange(elm,end,tim){
  if(!ie&&!moz)return;
  var idx = OpC.length;
    for(var i=0;idx>i;i++){
        if(OpC[i][0]==elm){
          clearInterval(OpC[i][4]);
            idx = i;
            break;
        }
        OpC[idx] = new Array();
    }
  if(idx==0)OpC[idx] = new Array();
   
    if(ie)actOp=elm.filters.alpha.opacity;
    else actOp=Math.round((elm.style.MozOpacity*100));
  if (actOp!=end){
    OpC[idx][0]=elm;
    OpC[idx][1]=actOp;
    OpC[idx][2]=end;
    OpC[idx][3]=(end>actOp)?1:-1;
    var delayTime = Math.floor((tim*1000)/Math.abs((actOp-end)));
    OpC[idx][4]=setInterval("opChange("+idx+")",delayTime);
  }
}
function opChange(idx){
  OpC[idx][1]+=OpC[idx][3];
  if (ie)OpC[idx][0].filters.alpha.opacity=OpC[idx][1];
  else OpC[idx][0].style.MozOpacity=Math.min(0.9999,OpC[idx][1]/100);
  if (OpC[idx][1]==OpC[idx][2]){
    clearInterval(OpC[idx][4]);
    return;
  }
}
function initSlide(){
  var c = document.getElementById('slidecontainer');
  with(c.style){
    position='relative';
    overflow='hidden';
    width=slideshow_width;
    height=slideshow_height;
  }
  if (ie||moz){
    for(i=0;2>i;i++){
      var im = document.createElement('IMG');
      c.appendChild(im);
      with(im.style){
        position='absolute';
        top=left='0px';
        width=slideshow_width;
        height=slideshow_height;
        filter='alpha(opacity=5)';
        MozOpacity='0.05';
      }
      im.id = 'canvas'+i;
    }
    startOpChange(im,100,pause/10000);
    setInterval('nextSlide()',pause);
  }else{
    var im = document.createElement('IMG');
    c.appendChild(im);
    with(im.style){
      position='absolute';
      top=left='0px';
      width=slideshow_width;
      height=slideshow_height;
    }
    im.id = "canvas"
    im.src = fadeimages[0];
  }
  curcanvas="canvas1";
  curimageindex=0;
}
function nextSlide(){
  startOpChange(document.getElementById(curcanvas),5,pause/10000);
  curcanvas = 'canvas' + ((curcanvas=='canvas0')?1:0);
  var im = document.getElementById(curcanvas);
  if(curimageindex+1==slidelength)ix = shuffleArray(ix);
  curimageindex = ++curimageindex%slidelength;
  im.src = fadeimages[ix[curimageindex]];
  startOpChange(im,100,pause/10000); 
}
function rotateimage(){
  var im = document.getElementById('canvas');
  curimageindex = ++curimageindex%slidelength;
  im.src = fadeimages[index[curimageindex]];
}
    if (ie||moz)
        window.onload=initSlide;
    else
        setInterval("rotateimage()",pause);
</script>
</head>
<body>
<table width="598" border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td width="503" align="left" valign="middle"><div id="slidecontainer"></div></td>
  </tr>
</table>
</body>
</html>
Avatar billede w13 Novice
31. december 2007 - 12:26 #1
Har du mulighed for at smide et link til problemet?
Avatar billede prop46 Nybegynder
31. december 2007 - 15:17 #2
Jeps. Har lige smidt det op her http://www.den-du-er.dk/slideshow/slideshow.html
Avatar billede w13 Novice
01. januar 2008 - 17:40 #3
Jeg tror måske, at du skal finde det sted, hvor der står:
im.id = 'canvas'+i;
og så tilføje følgende linje lige under:
im.src = fadeimages[0];
Avatar billede prop46 Nybegynder
01. januar 2008 - 19:24 #4
Jamen det kunne godt se ud som om det var det rigtige at gøre. Perfekt :0) Takker... og godt nytår!
Avatar billede w13 Novice
01. januar 2008 - 19:41 #5
Lyder godt! Godt nytår til dig også! :)
Avatar billede w13 Novice
02. januar 2008 - 01:09 #6
Tak for point! =)
Avatar billede prop46 Nybegynder
04. januar 2008 - 18:02 #7
velbekomme :0)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester