Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Probleme mit Bilderwechsel (Banner)

Empfohlene Antworten

Veröffentlicht

Servus,

vorneweg muss ich erstmal sagen das ich von JS kaum bis keine Ahnung habe.

Für unseren Webshop haben wir diverse Banner, welche im wechsel auf der Hauptseite angezeigt werden sollen. Ansich soweit kein Problem, gibt ja genug Scripte im Netz.

Folgendes Script verwende ich :

Das ist die banner.js:

Banner = new CreateBanner()


function CreateBanner()

{

 this.Frequenz = 15000;


 this.img = ''; this.i = 0;

 this.Imgs = new Array(); this.Links = new Array();


 this.Add = Banner_Add;

 this.Next = Banner_Next;

 this.Start = Banner_Start;

 this.onclick = Banner_onclick;

 this.initi = Banner_initi;

}


function Banner_Add(s,l)

{ this.Imgs[this.Imgs.length] = s; 

  this.Links[this.Links.length] = l; }


function Banner_Next()

{

 this.i++; if(this.i >= this.Imgs.length){this.i = 0}

 document[this.img].src = this.Imgs[this.i];

 window.setTimeout('Banner.Next()',this.Frequenz);

}


function Banner_Start(){ this.initi(); this.Next(); }

function Banner_initi()

{ document[this.img].onclick = Banner.onclick; }

function Banner_onclick()

{ self.open(Banner.Links[Banner.i],''); }
Das steht dann so im Head:
<script language="JavaScript" src="banner.js"></script>

<script language="JavaScript">

<!--

  Banner.img = 'BannerBild';

  Banner.Add('banner1.jpg','seite1.htm');

  Banner.Add('banner2.jpg','seite2.htm');

  Banner.Add('banner3.jpg','seite3.htm');

//-->

</script>
So steht es dann im Body :
<body onload="Banner.Start()">

 <a href="#" ><img src="" name="BannerBild" border="0"></a>

Funktioniert auf der Hauptseite auch ohne Probleme und Fehler. Aber sobald man auf eine Unterseite geht, bekommt man folgenden Fehler:

Details zum Fehler auf der Webseite

Meldung: 'document[...]' ist Null oder kein Objekt

Zeile: 30

Zeichen: 3

Code: 0

URI: http://......../images/banner.js

Was ist hier denn falsch, bzw was kann ich anders machen?

Wenn ich die Fehlermeldung richtig verstehe, resultiert diese aus dem "banner.js".

Kann ich die Funktion vielleicht erst im Body in der entsprechenden Template aufrufen?

Wenn ja wie stelle ich das am besten an?

Vielen dank schonmal im vorraus.

Gruß,

Tim


function Banner_Add(s,l)


Banner.Add('banner1.jpg','seite1.htm');

Was ist denn das? So hier ist es korrekt ->

function Banner_Add(s,l)...

wird zu

Banner.prototype.Add = function(s, l)...


function Banner_Add(s,l)


Banner.Add('banner1.jpg','seite1.htm');

Was ist denn das? So hier ist es korrekt ->

function Banner_Add(s,l)...

wird zu

Banner.prototype.Add = function(s, l)...

Also jetzt nochmal langsam damit ich es auch kapiere :D Anstatt
function Banner_Add(s,l)
soll da
Banner.prototype.Add = function(s, l)

rein.

Woher kommt denn das prototype bzw. was macht das ?

Zur einfacheren Verständlichkeit hier der Link der Seite von der kopiert habe:

JavaScript - Beispiele: Bilder - HTMLWorld

Gruß

Habs mal versucht.

Jetzt hab ich auf der Hauptseite schon 3 Fehler und ausserdem funktioniert dass Script dann nicht mehr.

Hier die Fehler:

Details zum Fehler auf der Webseite

Zeitstempel: Fri, 19 Jun 2009 14:46:32 UTC

Meldung: 'Banner_Add' ist undefiniert

Zeile: 10

Zeichen: 2

Code: 0

URI: http://..../images/banner.js

Meldung: 'Banner' ist undefiniert

Zeile: 56

Zeichen: 3

Code: 0

URI: http://...../eshop.php

Meldung: 'Banner' ist undefiniert

Zeile: 76

Zeichen: 1

Code: 0

URI: http://...../eshop.php

:confused:

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.