erstellen einer slide show

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • erstellen einer slide show

    also ich will eine ard galeri in dhtml erstellen! dazu nutze ich javascript!

    wenn ich auf weiter bzw zurück klicke (im script "<<" bzw ">>") klappt alles..

    nun wollt ich das als eine art slide show über den browser laufen lassen, wo nach soundso viel sekunden ein neues bild kommt..

    nur irgendwie geht das nicht =(

    kann mir einer helfen??


    <html>
    <head><title>My Wallpaper </title>

    </head>
    <body onload="next(1,1);">
    <script>

    function next(id,typ)
    {
    var bilder;
    if(id>"54")
    id = "1";

    bilder = id+".jpg";

    var id2 = id+1;
    if(id2>"54")
    id2 = "1";
    var id3 = id-1;
    if(id3 < 1)
    id3 = 54;
    if(typ == "2")
    {
    for(i=0;i<10;i++)
    {

    dynamic3.innerHTML='<a href="javascript:next('+id2+','+typ+');" target="_self" ><img src="'+bilder+'" border=0></a> lala';
    setTimeout("next()",10);
    if(id>"54")
    id = "1";

    bilder = id+".jpg";

    var id2 = id+1;
    if(id2>"54")
    id2 = "1";
    var id3 = id-1;
    if(id3 < 1)
    id3 = 54;
    }

    }
    if(typ == "1") {
    dynamic3.innerHTML='<a href="javascript:next('+id2+','+typ+');" target="_self" ><img src="'+bilder+'" border=0></a>';

    dynamic4.innerHTML='<a href="javascript:next('+id3+','+typ+');" target="_self" ><<</a>';
    dynamic5.innerHTML='<a href="javascript:next('+id2+','+typ+');" target="_self" >>></a>';

    }








    }





    </script>
    <center>
    <table width=100%><tr><td width=50% align=right><p align=right><div id="dynamic4"></div></p><table height=100%><tr><td height=100%>&nbsp;</td></tr></table></td>
    <td width=0%><center>
    <ilayer id="dynamic1" width="100%" height="178"><layer id="dynamic2" width="100%" height="178"><div id="dynamic3"></div></layer><p></ilayer></td>
    </center></td><td width=50% align=left><p align=left><div id="dynamic5"></div></p><table height=100%><tr><td height=100%>&nbsp;</td></tr></table></td></tr></table>
    </center>
    <a href="javascript:next(1,2);">test</a>

    </body></html>


    mfg trashar

  • #2
    du musst die divs mit "window.document.all.DIVNAME" (für IE) bzw. mit "window.document.getElementById['DIVNAME']" (für gscheite browser ) ansprechen, der name allein genügt nicht (glaub ich halt)

    mfg mosez

    Kommentar


    • #3
      ... ich mache das so

      <!--
      function makeArray() {
      this.length = makeArray.arguments.length
      for (var i = 0; i < this.length; i++) this[i+1] = makeArray.arguments[i]
      }

      var pix = new makeArray ("1.jpg", "2.jpg", "3.jpg", "4.jpg", "5.jpg", "6.jpg", "7.jpg", "8.jpg", "9.jpg", "10.jpg", "11.jpg");
      var nummer = 1;

      function wechsle() {
      document.image.src = "dia"+pix[nummer];
      nummer += 1;
      if (nummer == 12) nummer = 1;
      setTimeout("wechsle()", 9000);
      }
      //-->

      die bilder heißen dia1.jpg, dia2.jpg und so weiter und liegen im gleichen Verzeichnis.

      Im Body dann mit

      <form>
      <input type="reset" onclick="wechsle()" value="Hier Diashow starten!"></input>
      </form>

      per Form-Button Diashow starten, alternativ mit Eventhandler "Onload".

      Das erste Bild zeigste dann einfach schon auf der Seite an. Schön ist es dann, wenn du auf einer Eingangsseite die Bilder als 0-Pixelgrafiken schon in den Browsercache schiebst.

      Gruß,

      Maik

      Kommentar

      Lädt...
      X