Avatar billede casualty Nybegynder
21. april 2003 - 22:19 Der er 1 løsning

Random billede slide...

Jeg har et javascript der viser en række billeder som et slideshow hvor de fader ind i hinanden,

Der er 100 point til den der kan lave følgende modifikationer:

1. Den skal altid starte op på det samme billede.(Eventuelt noget med array index 1)

2. Den skal skifte random imellem alle billederne efter at det første billede er vist

Håber at i kan hjælpe....Mvh Casualty

Her er scriptet:

<script language="JavaScript1.2">

var slideshow_width='140px'
var slideshow_height='225px'
var pause=3000

var fadeimages=new Array()
fadeimages[0]="photo1.jpg"
fadeimages[1]="photo2.jpg"
fadeimages[2]="photo3.jpg"

var preloadedimages=new Array()
for (p=0;p<fadeimages.length;p++)
{
  preloadedimages[p]=new Image()
  preloadedimages[p].src=fadeimages[p]
}

var ie4=document.all
var dom=document.getElementById

if (ie4||dom)
document.write('<div style="position:relative;width:'+slideshow_width+';height:'+slideshow_height+';overflow:hidden"><div  id="canvas0" style="position:absolute;width:'+slideshow_width+';height:'+slideshow_height+';top:0;left:0;filter:alpha(opacity=10);-moz-opacity:10"></div><div id="canvas1" style="position:absolute;width:'+slideshow_width+';height:'+slideshow_height+';top:0;left:0;filter:alpha(opacity=10);-moz-opacity:10"></div></div>')
else
document.write('<img name="defaultslide" src="'+fadeimages[0]+'">')

var curpos=10
var degree=10
var curcanvas="canvas0"
var curimageindex=0
var nextimageindex=1


function fadepic()
{
  if (curpos<100)
  {
    curpos+=10
    if (tempobj.filters)
    tempobj.filters.alpha.opacity=curpos
  }
  else if (tempobj.style.MozOpacity)
  {
    tempobj.style.MozOpacity=curpos/100
  }
  else
  {
    clearInterval(dropslide)
    nextcanvas=(curcanvas=="canvas0")? "canvas0" : "canvas1"
    tempobj=ie4? eval("document.all."+nextcanvas) : document.getElementById(nextcanvas)
    tempobj.innerHTML='<img src="'+fadeimages[nextimageindex]+'">'
    nextimageindex=(nextimageindex<fadeimages.length-1)? nextimageindex+1 : 0
    setTimeout("rotateimage()",pause)
  }
}

function rotateimage()
{
  if (ie4||dom)
  {
    resetit(curcanvas)
    var crossobj=tempobj=ie4? eval("document.all."+curcanvas) : document.getElementById(curcanvas)
    crossobj.style.zIndex++
    var temp='setInterval("fadepic()",50)'
    dropslide=eval(temp)
    curcanvas=(curcanvas=="canvas0")? "canvas1" : "canvas0"
  }
  else
  {
    document.images.defaultslide.src=fadeimages[curimageindex]
    curimageindex=(curimageindex<fadeimages.length-1)? curimageindex+1 : 0
  }
}

function resetit(what)
{
  curpos=10
  var crossobj=ie4? eval("document.all."+what) : document.getElementById(what)
  if (crossobj.filters)
  {
    crossobj.filters.alpha.opacity=curpos
  }
  else if (crossobj.style.MozOpacity)
  {
    crossobj.style.MozOpacity=curpos/100
  }
}

function startit()
{
  var crossobj=ie4? eval("document.all."+curcanvas) : document.getElementById(curcanvas)
  crossobj.innerHTML='<img src="'+fadeimages[curimageindex]+'">'
  rotateimage()
}

if (ie4||dom)
{
  window.onload=startit
}
else
{
  setInterval("rotateimage()",pause)
}

</script>
Avatar billede casualty Nybegynder
21. april 2003 - 22:52 #1
Opgaven er aflyst
Skulle nogen være påbegyndt giver jeg gerne points for den tid i nåede at bruge på det ...
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