Linkrahmen bei Bannerrotation

willswing

Grünschnabel
Hallo!

ich würde gerne folgenden script für eine Bannerrotation nutzen und schaffe es nicht den Linkrahmen um die Bilder zu entfernen.


Code:
<script type="text/javascript"> 
   /** 
   * @banner    [array] Bannersammlung 
   */ 
   var banner = new Array(); 
   banner[0] = { 
      href: 'http://www.whatever.com', 
      src: 'banner0.gif', 
      alt: 'alttext 0' 
   } 
   banner[1] = { 
      href: 'http://www.whatever.com', 
      src: 'banner1.gif', 
      alt: 'alttext 1' 
   } 
   banner[2] = { 
      href: 'http://www.whatever.com', 
      src: 'banner2.gif', 
      alt: 'alttext 2' 
   } 
   banner[3] = { 
      href: 'http://www.whatever.com', 
      src: 'banner3.gif', 
      alt: 'alttext 3' 
   } 
   banner[4] = { 
      href: 'http://www.whatever.com', 
      src: 'banner4.gif', 
      alt: 'alttext 4' 
   } 
   banner[5] = { 
      href: 'http://www.whatever.com', 
      src: 'banner5.gif', 
      alt: 'alttext 5' 
   } 
   /** 
   * @bannerChange      Gibt zufälligen Banner zurück [ html ] 
   * @param         [string] id des banner-containers 
   *                [array] die Bannersammlung 
   *                [number] refresh in ms (optional) 
   */ 
   var bannerChange = { 
      init: function(zone,store,time){ 
         this.name  = 'bannerChange'; 
         this.zone  = document.getElementById(zone); 
         this.store = store; 
         this.count = store.length-1; 
         this.time  = (time) ? time : false; 
         this.lastNr = null; 
          
         this.preloadImages(); 
         this.randomShow(); 
         if (this.time) this.interval = window.setInterval(this.name+".randomShow()", time); 
      }, 
      preloadImages: function(){ 
         for (var i=0;i<=this.count;i++) { 
            var img = new Image(); 
            img.src = this.store[i].src; 
         } 
      }, 
      getRandomNr: function(){ 
         var nextNr; 
         do { 
            nextNr = Math.round(this.count * Math.random()); 
         } while(nextNr == this.lastNr); 
         this.lastNr = nextNr; 
         return nextNr; 
      }, 
      randomShow: function(){ 
         var whichOne = this.getRandomNr();          
         var html = '<a href="'+this.store[whichOne].href+'" >'; 
         html     += '<img src="'+this.store[whichOne].src+'" '; 
         html     += ' alt="'+this.store[whichOne].alt+'">'; 
         html     += '</a>'; 
         this.zone.innerHTML = html; 
      } 
   } 
   window.onload = function(){ 
      bannerChange.init('dropzone',banner,1000); 
   }
</script>

-------------------------------------

<div id="dropzone"> 
   <!-- banner goes here --> 
    <a href="http://www.whatever.com"> 
      <img src="banner0.gif" alt="banner für user ohne javascript" /> 
    </a>
</div>
 
Hallo Sven,

danke für die schnelle Antwort !

Ich habe die Attribute so eingefügt:

banner[0] = {
href: 'http://www.whatever.com text-decoration:none',
src: 'banner1.gif border="0"',
alt: 'alttext 0'
}

Der Rahmen bleibt und mit border="0" werden die Bannerbilder nicht angezeigt - Muß ich die Parameter an anderer Stelle oder in anderer Schreibweise einfügen?
 
Der Rahmen bleibt und mit border="0" werden die Bannerbilder nicht angezeigt
Wie denn auch wenn du das attribut in ds src-attribut schreibst:
src: 'banner1.gif border="0"'

Und bitte benutz [code=javascript]...[/code] damit der Code leichter zu lesen ist.
 
Border ist ganz einfach genauso ein attribut wie src oder alt oder href.
Javascript:
banner[0] = {
href: 'http://www.whatever.com text-decoration:none',
src: 'banner1.gif border="0"',
alt: 'alttext 0',
border: '0'
}

Sofern ich das Script richtig verstehe wirst du dann aber noch die randomShow function anpassen müssen
Javascript:
randomShow: function(){
var whichOne = this.getRandomNr();
var html = '<a href="'+this.store[whichOne].href+'" >';
html += '<img src="'+this.store[whichOne].src+'" ';
html += ' border="'+this.store[whichOne].border+'" ';
html += ' alt="'+this.store[whichOne].alt+'">';
html += '</a>';
this.zone.innerHTML = html;
}

Irgendwie so.

//e

Wobei mir gerade einfällt das das eigentlich völlig überflüssig ist da sich der Wert ja vermutlich nie ändert.
Von daher reicht das vollkommen :
Javascript:
randomShow: function(){
var whichOne = this.getRandomNr();
var html = '<a href="'+this.store[whichOne].href+'" >';
html += '<img border="0" src="'+this.store[whichOne].src+'" ';
html += ' alt="'+this.store[whichOne].alt+'">';
html += '</a>';
this.zone.innerHTML = html;
}
 
Zuletzt bearbeitet:
Habe doch noch eine Frage!

Direkt auf der Seite läuft alles so wie ich mir das vorgestellt habe.
Das Banner wird ja mit:

Code:
<div id="dropzone"> 
   <!-- banner goes here --> 
    <a href="http://www.whatever.com"> 
      <img src="banner0.gif" alt="banner für user ohne javascript" /> 
    </a>
</div>

aufgerufen.

Ich möchte das Banner aber von verschiedenen Seiten aufrufen und habe deshalb das Script unter banner.js gespeichert.

Mit:
Code:
<script src="banner.js" type="text/javascript">
</script>

klappt das Aufrufen der separaten Datei nicht.

Wie rufe ich das Script mit dem Parameter: id="dropzone" auf ********
 

Neue Beiträge

Zurück