Alexander (HH): Tipp-Sammlung

Beitrag lesen

Moin Moin!

Leider hat der IE die sehr unschöne Angewohnheit, Formularelemente immer "on top" zu legen, wodurch das div mit dem Text zerstört wird. Also muß ich nur für IE einen iframe erzeugen, diesen durchsichtig machen und über die Formularelemente legen, bevor ich das div darauf positioniere. Welche Feature-Abfrage soll ich da nehmen? Frage ich dazu irgendeine Eigenschaft ab, die nur IE kennt, ist es genauso Browsersniffing wie es
var ie = /*@cc_on!@*/false; auch wäre.

Zugegeben, an diese spezielle Macke habe ich nicht gedacht. Macht aber nichts, hier kann man nicht-IEs die ganze Arbeit sehr leicht ersparen, indem man die ganze IFRAME-Kontruktion in IE Conditional Comments packt, so dass nicht-IEs den Workaround gar nicht erst sehen:

  
function ieInputFix(...)  
{  
    /*@cc_on  
    var iframe=....;  
    ....  
    @*/  
}  

und später:

  
function onLoadHandler()  
{  
    ....  
    ieInputFix(a,b,c);  
    ....  
}  

HTML-CCs wären auch denkbar, erzeugen aber u.U. invalides HTML und funktionieren erst ab IE 5.0.

Alexander

--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".