Felix Riesterer: es ist vollbracht.

Beitrag lesen

Lieber Struppi,

hier nun meine verbesserte Version. Vielen Dank für Deine wertvollen Hinweise!! Werde es so bald als möglich mit einem älteren IE ausprobieren. :-)

  
function anzeigen(bildobjekt)  
   {  
   var JS_popup = document.getElementById("JS_popup");  
   var untertitel = bildobjekt[0];  
   var bild_url = bildobjekt[1];  
   var html_code = '';  
   var x_pos = y_pos = "0px";  
  
   if(window.innerWidth)  
      {  
      x_pos = Math.ceil((window.innerWidth - 150)/2 + window.pageXOffset) + "px";  
      y_pos = Math.ceil((window.innerHeight - 200)/2 + window.pageYOffset) + "px";  
      }  
    else  
      {  
      var IE = (document.compatMode && document.compatMode == "CSS1Compat") ? document.documentElement : document.body || null;  
  
      x_pos = Math.ceil((IE.offsetWidth - 150)/2 + IE.scrollLeft) + "px";  
      y_pos = Math.ceil((IE.offsetHeight -200)/2 + IE.scrollTop) + "px";  
      }  
  
   html_code += '<table border="0" cellpadding="0" cellspacing="0"><tr>';  
   html_code += '<td width="120" height="120" style="text-align: center;">';  
   html_code += '<img id="anzeigebild" alt="kein Bild?" />';  
   html_code += '</td></tr><tr><td class="zentriert">' + untertitel + '</td></tr></table>';  
   html_code += '<img id="x_beenden" alt="schlie&szlig;en" />';  
  
   JS_popup.innerHTML = html_code;  
   JS_popup.style.display = "block";  
   JS_popup.style.position = "absolute";  
   JS_popup.style.top = y_pos;  
   JS_popup.style.left = x_pos;  
  
   document.getElementById("x_beenden").src = "images/x-beenden.gif";  
   document.getElementById("anzeigebild").src = bild_url;  
  
   return false;  
   }  

Im HTML-body steht dann ein
   <div id="JS_popup" style="display: none;"></div>

und ein Bild-Link mit Popup-Effekt funktioniert dann so:
   <a href="wo/mein/bild/ist.gif" onclick="return anzeigen(["Das steht unter dem Bild", this.href])">Link-Text</a>

Liebe Grüße aus Ellwangen,

Felix Riesterer.