nach stundenlanger suche und bastelei die frage hier.
ich habe das lightbox.js versucht zu erweitern, damit ich einen titel UND eine beschreibung unter den großen bildern angezeigt bekomme.
ich habe die description als alt-text des bildes angelegt.
im generierten quelltext taucht auch schön der neue <span> mit der ID=mydesc auf. leider wird nur der titel-text dort eingesetzt (vom java-script vermute ich) ...
beispiel-html (generiert):
Code: Alles auswählen
<div style="width: 620px;" id="imageDataContainer"><div style="" id="imageData"><div id="imageDetails"><span id="caption">Besuch in Stavropol 28.7-30.07.09</span><span id="mydesc">Besuch in Stavropol 28.7-30.07.09</span><span style="" id="numberDisplay">Bild 2 von 7</span></div>
Code: Alles auswählen
...
Builder.node('div',{id:'imageDetails'}, [
Builder.node('span',{id:'caption'}),
// neuen span mydesc bauen
Builder.node('span',{id:'mydesc'}),
Builder.node('span',{id:'numberDisplay'})
]),
...
//neue var id mydesc zufügen
var ids =
'overlay lightbox outerImageContainer imageContainer lightboxImage hoverNav prevLink nextLink loading loadingLink ' +
'imageDataContainer imageData imageDetails caption
mydesc
numberDisplay bottomNav bottomNavClose';
...
// alt-atribut verknüpfen (hier vermute ich meine fehler)
if ((imageLink.rel == 'lightbox')){
// if image is NOT part of a set, add single image to imageArray
this.imageArray.push([imageLink.href, imageLink.title, imageLink.alt]);
} else {
// if image is part of a set..
this.imageArray =
$$(imageLink.tagName + '[href][rel="' + imageLink.rel + '"]').
collect(function(anchor){ return [anchor.href, anchor.title, anchor.alt]; }).
uniq();
while (this.imageArray[imageNum][0] != imageLink.href) { imageNum++; }
}
...
// infos zum bild erneuern. ergänzt mit mydesc
updateDetails: function() {
// if caption is not null
if (this.imageArray[this.activeImage][1] != ""){
this.caption.update(this.imageArray[this.activeImage][1]).show();
}
// if description is not null
if (this.imageArray[this.activeImage][1] != ""){
this.mydesc.update(this.imageArray[this.activeImage][1]).show();
}
...
hat leider auch nicht geholfen, scheint sich auf eine ältere lightbox-version zu beziehen ...
kann mir jemand auf die sprünge helfen?
danke und