Thema: Browser-Abfrage
Bei vielen Scripts & Hints, die hier angeboten werden und syntaktisch auf browserspezifische Eigenheiten eingehen, werden diese per "document.layers" und "document.all" abgefragt. Das geht über kurz oder lang ins Auge, da für zukünftige Browserversionen, die sich stärker an die W3C-Specification des DOM halten, dann der ganze Kram umgeschrieben, bzw. angepasst werden muss. Da werden dann wohl ein paar Leute 'ne kleine Krise kriegen.....<BR>Der Zugriff auf Objekte mit ID lässt sich auf N6 und IE5 schon problemlos mit "document.getElementById" beeinflussen. Hier wäre eine Erweiterung der Browser-Abfrage dringend angeraten.<P>Als echt guten Browser-Check verwende ich den von Dan Steinman <A HREF="http://www.dansteinman.com" TARGET=_blank>http://www.dansteinman.com</A> <P>hier das Script:<BR>[color="#CC0000"]<BR>function BrowserCheck()<BR> {<BR> var b = navigator.appName<BR> if (b=="Netscape") this.b = "ns"<BR> else if (b=="Microsoft Internet Explorer") this.b = "ie"<BR> else this.b = b<BR> <BR> this.v = parseInt(navigator.appVersion)<BR> this.ns = (this.b=="ns" && this.v>=4)<BR> this.ns4 = (this.b=="ns" && this.v==4)<BR> this.ns5 = (this.b=="ns" && this.v>=5)<BR> this.ie = (this.b=="ie" && this.v>=4)<BR> this.ie4 = (navigator.userAgent.indexOf('MSIE 4')>0)<BR> this.ie5 = (navigator.userAgent.indexOf('MSIE 5')>0)<BR> if (this.ie5) this.v = 5<BR> this.min = (this.ns| |this.ie)<BR> }<BR> is = new BrowserCheck()<BR></font><P>Die folgende Funktion enthält als Argument den ID-Namen und liefert eine Referenz auf das Objekt zurück:<P>[color="#CC0000"]<BR>function get_element(name)<BR> {<BR> if (is.ie | | is.ns)<BR> {<BR> return document.getElementById(name);<BR> }<BR> else if (is.ns4)<BR> {<BR> return eval("document." + name);<BR> }<BR> else if (is.ie4)<BR> {<BR> return eval("document.all." + name);<BR> }<BR> }<P></font><P>Diese Methode hat etwas mehr Zukunft....<P>Gruß von der Isar<BR>Achim<BR>