Page 1 of 1

pngfix.js lässt Internet Explorer 6 abstürzen

Posted: Mon 13. Nov 2006, 14:37
by El Kevo
Hallo!
Da ich für meine Seite einige transparente .png bilder benutze, musste ich folgendes javascript einbinden:

Code: Select all

/*
 
Correctly handle PNG transparency in Win IE 5.5 & 6.
http://homepage.ntlworld.com/bobosola. Updated 18-Jan-2006.

Use in <HEAD> with DEFER keyword wrapped in conditional comments:
<!--[if lt IE 7]>
<script defer type="text/javascript" src="pngfix.js"></script>
<![endif]-->

*/

var arVersion = navigator.appVersion.split("MSIE")
var version = parseFloat(arVersion[1])

if ((version >= 5.5) && (document.body.filters)) 
{
   for(var i=0; i<document.images.length; i++)
   {
      var img = document.images[i]
      var imgName = img.src.toUpperCase()
      if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
      {
         var imgID = (img.id) ? "id='" + img.id + "' " : ""
         var imgClass = (img.className) ? "class='" + img.className + "' " : ""
         var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
         var imgStyle = "display:inline-block;" + img.style.cssText 
         if (img.align == "left") imgStyle = "float:left;" + imgStyle
         if (img.align == "right") imgStyle = "float:right;" + imgStyle
         if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
         var strNewHTML = "<span " + imgID + imgClass + imgTitle
         + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
         + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
         + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>" 
         img.outerHTML = strNewHTML
         i = i-1
      }
   }
}
und dann im backend - > vorlage -> html head diesen:

Code: Select all

<!--[if gte IE 5.5000]>
<script defer type="text/javascript" src="http://www.gemeinde-bandelin.de/php/Bilder/pngfix.js"></script>
<![endif]-->
hat bis jetzt auch bei allen seiten funktioniert die ich gemacht habe, nur seitdem ich phpwcms benutze und diesen code einfüge stürzt mir jedes mal der internet explorer ab. (ich weiß, firefox is eh besser... aber ich kann ja nicht allen besuchern der seite sagen sie sollen firefox instalieren)

kann mir irgendjemand helfen? bzw. sagen ob sein IE auch den geist aufgibt?!

die seite mit code findet ihr hier: -> http://www.gemeinde-bandelin.de/php/

Posted: Mon 13. Nov 2006, 14:58
by Eggi
hab es mir mit IE 7 angeschaut.
kein absturz

Posted: Mon 13. Nov 2006, 15:18
by flip-flop
Du meintest sicher die Seite http://www.gemeinde-bandelin.de/php/
Also ohne JS im IE sind Teile des Hintergrunds nicht vorhanden. Mit JS kommt der Fehler. Ich habe keine Ahnung weshalb.
Du erreichst das aussehen m.A. aber auch ohne die transparenten png´s.

Diese JS-Technik würde ich persönlich nicht einsetzen, vor allem nicht auf einer öffentlichen Seite, die sich halbwegs behindertengerecht verhalten sollte.
Dazu gibt es sogar ein Gesetz, das dies zwingend vorschreibt.

Gruß Knut

Posted: Mon 13. Nov 2006, 15:29
by El Kevo
stimmt... falscher link...
flip-flop wrote: Du erreichst das aussehen m.A. aber auch ohne die transparenten png´s.
ja, aber nur wenn ich einen einfarbigen hintergrund benutze.
die eigentliche seite sitzt ja bei jeder auflösung woanders...
gifs sind auch nich die beste lösung, weil es da keine halbtransparent gibt...
flip-flop wrote: Dazu gibt es sogar ein Gesetz, das dies zwingend vorschreibt.
:shock: was?!

Posted: Mon 13. Nov 2006, 16:02
by flip-flop
Das geht auch mit diesem Hintergrund. z.B. zwischen dem Stengel der Blume und der Seite fügst du ein dunkles braun ein. Das wird niemandem Auffallen, dass an dieser Stelle der Hintergrund nicht der Hintergrund ist.
Die Schatten würde ich recht dunkel auslaufen lassen. (Ist ja im Moment schon so).
Gif-Halbtransparents brauchst du m.A. nicht. Das klappt schon mit den Schatten bei Volltransparents.

Gesetz: Hier eine Übersicht:
http://de.wikipedia.org/wiki/Barrierefr ... Verordnung
http://www.einfach-fuer-alle.de/artikel/bitv/

Ich bin mir nicht sicher ob eine Gemeindeseite auch darunter fällt, ist aber nah dran.

Gruß Knut