lugosi: Filter / Abfrage des Browsers

Hy,

ich möchte den PC/MIE - Nutzern eine Galerie mit Überblendeffekt bieten; alle anderen (auch MAC/IE) bekommen einen normalen Bilderwechsel zu sehen.

Um den Browser nach seinen Fähigkeiten, Filter-Effekte wiederzugeben, abzufragen, möchte ich folgenden Code nutzen:

document.getElementsByTagName('body')[0].style.filter != undefined
? mitfilter() : ohnefilter();

Zu dem Style-Objekt "filter" habe ich aber hier nichts gefunden, auch nicht in meinen vielen Büchern. Scheint ein Bestandteil von JS-Script zu sein.

Meine Frage: kann ich die Abfrage so einsetzen ? Wird die Frage nach "style.filter" von allen Browsern ausser PC/IE "verstanden" bzw. die entsprechende Funktion ohnefilter() ausgeführt ?

Grüße Lugosi

  1. Hallo,

    ich möchte den PC/MIE - Nutzern eine Galerie mit Überblendeffekt bieten; alle anderen (auch MAC/IE) bekommen einen normalen Bilderwechsel zu sehen.

    Um den Browser nach seinen Fähigkeiten, Filter-Effekte wiederzugeben, abzufragen, möchte ich folgenden Code nutzen:

    document.getElementsByTagName('body')[0].style.filter != undefined
    ? mitfilter() : ohnefilter();

    MSIE kennt auch filters http://msdn.microsoft.com/workshop/author/dhtml/reference/collections/filters.asp, damit wäre auch ein direkter Test möglich:
    if (document.body.filters) mitfilter(); else ohnefilter();

    Zu dem Style-Objekt "filter" habe ich aber hier nichts gefunden, auch nicht in meinen vielen Büchern. Scheint ein Bestandteil von JS-Script zu sein.

    Es ist Bestandteil von JScript, den Microsoft-eigenen Scripting/CSS-Zusätzen.
    http://selfhtml.teamone.de/css/eigenschaften/filter.htm
    http://msdn.microsoft.com/workshop/author/dhtml/reference/properties/filter.asp

    Meine Frage: kann ich die Abfrage so einsetzen ?

    Im Prinzip schon. MSIE 5.0 kann allerdings ==undefined nicht, aber if (document.getElementsByTagName('body')[0].style.filter) ... würde sowieso ausreichen (oder typeof(...)=='undefined').

    Wird die Frage nach "style.filter" von allen Browsern ausser PC/IE "verstanden" bzw. die entsprechende Funktion ohnefilter() ausgeführt ?

    Voraussichtlich ja.

    Mathias

    1. Herzlichen Dank für die ausführliche Antwort :-)