Automatischer Bannerwechsel nach xxSekunden

Status
Nicht offen für weitere Antworten.

Strahleman

Mitglied
Hiho,

ich habe auf meiner Homepage noch Platz für ein Banner habe aber mehr als ein Banner, das ich dort einfügen möchte. Gibt es ein Script, womit man ganz einfach bestimmen kann, dass sich die verschiedenen Banner nach z.b. 10s immer ändern, also sich automatisch ein anderes Banner in die Tabelle läd? Geht es auch, dass man jedes Banner mit einem eigenen Link besetzt, also dass jedes Banner auf eine andere Homepage leitet?

THX
 
PHP:
<html>
<head>
<script type="text/javascript">
var BannerImgs = new Array();
BannerImgs[0] = "banner1.gif";
BannerImgs[1] = "banner2.gif";
BannerImgs[2] = "banner3.gif";
BannerImgs[3] = "banner5.jpeg";

var BannerTarg = new Array();
BannerTarg[0] = "www.1.de";
BannerTarg[1] = "www.2.de";
BannerTarg[2] = "www.3.de";
BannerTarg[3] = "www.4.de";

var posi = -1;

function change() {
  posi++;
  window.document.getElementById("bannersid").src = BannerImgs[posi];
  setTimeout("change()", 50000);  //<- 500 millisekunden = 5 Sekunden
}

function navigate() {
  window.open(BannerTarg[posi]);
}
</script>
</head>
<body onLoad="change();">

<img id="bannersid" style="cursor:hand;" onClick="naviaget();">

</body>
</html>
 
1.: Du kannst so viele Array-Elemente benutzen, wie du willst, musst also nicht eins leer lassen. Du musst nur darauf achten, dass BannerImgs und BannerTarg immer gleich viele Elemente haben.

2.: Das überarbveitete Script: (Den fehler mit dem Klick hättest du eigentlich auch selber rausfinden können :) )
PHP:
<html>
<head>
<script type="text/javascript">
var BannerImgs = new Array();
BannerImgs[0] = "banner1.gif";
BannerImgs[1] = "banner2.gif";
BannerImgs[2] = "banner3.gif";
BannerImgs[3] = "banner5.jpeg";

var BannerTarg = new Array();
BannerTarg[0] = "www.1.de";
BannerTarg[1] = "www.2.de";
BannerTarg[2] = "www.3.de";
BannerTarg[3] = "www.4.de";

var posi = -1;

function change() {
  if (posi = BannerImgs.length + 1) posi = -1;
  posi++;
  window.document.getElementById("bannersid").src = BannerImgs[posi];
  setTimeout("change()", 50000);  //<- 500 millisekunden = 5 Sekunden
}

function navigate() {
  window.open(BannerTarg[posi]);
}
</script>
</head>
<body onLoad="change();">

<img id="bannersid" style="cursor:hand;" onClick="naviagte();">

</body>
</html>
 
hm ich glaub ich bin zu blöd oder da is noch nen fehler im script (bin script n00b ^^) ;)

also bei mir geht des immernoch net :(

Hier nen Link: Link
 
Mach aus dem:
PHP:
if (posi = BannerImgs.length + 1) posi = -1;
Das hier:
PHP:
if (posi == BannerImgs.length + 1) posi = -1;

Dann:
Schreibst du immer die Fehler anderer ab?
PHP:
<img id="bannersid" style="cursor:hand;" onClick="naviagte();">
Wird zu
PHP:
<img id="bannersid" style="cursor:hand;" onClick="navigate();">

Und pass das nächste mal beim löschen von Text ein bisschen besser auf :p
Nach der Zeile mit dem setTimeout fehlt eine geschlossene geschweifte Klammer: }
 
hmm hab ma rumprobiert aber irgendwie will das net.
Hier is ma der Code den ich im Moment hab:

<html>
<head>
<script type="text/javascript">
var Bannerembed = new Array();
Bannerembed[0] = "maxbyte468x60.swf";

var BannerTarg = new Array();
BannerTarg[0] = "http://www.maxbyte.de";

var posi = -1;

function change() {
if (posi == Bannerembed.length + 1) posi = -1;
posi++;
window.document.getElementById("bannersid").src = Bannerembed[posi];
setTimeout("change()", 10000);
}

function navigate() {
window.open(BannerTarg[posi]);
}
</script>
</head>
<body onLoad="change();">

<embed id="bannersid" style="cursor:hand;" onClick="navigate();">

</body>
</html>
 
Hab den Fehler gefunden war natürlich Blödsind was ich da geschrieben hab ;)
Aber trotzdem noch nen kleines Prob. Ich würd gern swf's und jpg's/gif's abwechselnd ablaufen lassen. Wenn ich einfach nen embed tag einfüg dann is des Flashbanner die ganze Zeit neben den anderen Bannern.


THX
 
Status
Nicht offen für weitere Antworten.

Neue Beiträge

Zurück