Hannes Mair: Probleme mit Javascript unter Safari

Hi ihr Lieben!

Ich habe mir ein Script geschrieben, ein Art WYSIWYG-Editor, jedoch nur mit den Funktionen fett, unterstrichen und Schriftgröße.

Beim Laden der Seite (onLoad) wird eine Funktion ausgeführt welche das Formularfeld aktiviert (Inhalt über eine Frame) und "Ihr Text" hineinschreibt.
Unter IE, FireFox etc. funktioniert es, nur unter Safari (Mac OS X) funktioniert leider das Script nicht - das Formularfeld wird nicht aktiviert (man kann nichts hineinschreiben).

Meine Frage nun, muss ich Safari hier aufführen (bei isGecko, isIE)??

[CODE]
var formu, ifrm, uagent=navigator.userAgent.toLowerCase(),
  isGecko = ( uagent.match('gecko') && navigator.productSub>=20030210 ),
  isIE = uagent.match('msie') && !uagent.match('safari') && !uagent.match('opera') && (!uagent.match('msie 5.5')||!uagent.match('msie 6.'));

[/CODE]

Grüße Hannes

  1. Hi,

    Meine Frage nun, muss ich Safari hier aufführen (bei isGecko, isIE)??

    nein. Du musst die existierende "Prüfung" eliminieren und durch etwas Sinnbehaftetes ersetzen. Wie ein Browser zu heißen behauptet ist für Dich von absolut keinem Interesse - Du willst wissen, was er _kann_. Also prüfe seine Fähigkeiten ab.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hi,

      Meine Frage nun, muss ich Safari hier aufführen (bei isGecko, isIE)??

      nein. Du musst die existierende "Prüfung" eliminieren und durch etwas Sinnbehaftetes ersetzen. Wie ein Browser zu heißen behauptet ist für Dich von absolut keinem Interesse - Du willst wissen, was er _kann_. Also prüfe seine Fähigkeiten ab.

      Cheatah

      Also jetzt hab ich es hinbekommen dass das Formularfeld aktiv wird... jedoch kann ich meine Funktionen wie Fett nicht verwenden, da passiert einfach nichts.
      Habt ihr eine Idee?

      Soll ich den Teil meines Scriptes posten?

      1. Hi,

        Soll ich den Teil meines Scriptes posten?

        wenn es mehr als ca. 10 Zeilen sind, die zum Verständnis des Konzeptes _und_ des Problems nötig sind: Nein. Ein Link macht sich da sehr viel besser. Außerdem ist grundsätzlich immer eine Fehlerbeschreibung von Nöten; "es passiert nichts" ist keine.

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
        1. Hi,

          Soll ich den Teil meines Scriptes posten?

          wenn es mehr als ca. 10 Zeilen sind, die zum Verständnis des Konzeptes _und_ des Problems nötig sind: Nein. Ein Link macht sich da sehr viel besser. Außerdem ist grundsätzlich immer eine Fehlerbeschreibung von Nöten; "es passiert nichts" ist keine.

          Cheatah

          Ich würde gerne eine Fehlermeldung liefern, jedoch habe ich keine - weil nichts passiert wenn ich im Formularfeld den Text auswähle und dann z.B. auf fett klicke... passiert leider nichts ;)

          1. Hi,

            Außerdem ist grundsätzlich immer eine Fehlerbeschreibung von Nöten;
            Ich würde gerne eine Fehlermeldung liefern,

            ich habe nach keiner Fehlermeldung gefragt, sondern nach einer Fehlerbeschreibung. Und die kann *nur* von Dir höchstpersönlich kommen.

            Cheatah

            --
            X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
            X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
            X-Will-Answer-Email: No
            X-Please-Search-Archive-First: Absolutely Yes
            1. ich habe nach keiner Fehlermeldung gefragt, sondern nach einer Fehlerbeschreibung. Und die kann *nur* von Dir höchstpersönlich kommen.

              Cheatah

              Also es ist ein Formularfeld (sozusagen ein aktives)... d.h. ich markiere Text, klicke auf Fett und dann wird der markierte Text in dem Formularfeld (textarea) sofort fett dargestellt.

              In FF + IE klappts. In Safari kann ich nur Text eintippen, sobald ich Text markiere und auf das Fett klicke wird der markierte Text unmarkiert und es passiert nichts.

              Grüße und Danke

              1. Hi,

                Also es ist ein Formularfeld (sozusagen ein aktives)... d.h. ich markiere Text, klicke auf Fett und dann wird der markierte Text in dem Formularfeld (textarea) sofort fett dargestellt.

                In FF + IE klappts. In Safari kann ich nur Text eintippen, sobald ich Text markiere und auf das Fett klicke wird der markierte Text unmarkiert und es passiert nichts.

                das ist ein Stückchen besser. Wenn Du jetzt noch die Ergebnisse (und ggf. den Weg dorthin) Deiner Problemanalyse notierst, fehlt eigentlich nur noch der Link zur Problemseite.

                Cheatah

                --
                X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
                X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
                X-Will-Answer-Email: No
                X-Please-Search-Archive-First: Absolutely Yes
              2. Hi,

                dann wird der markierte Text in dem Formularfeld (textarea) sofort fett dargestellt.
                In FF + IE klappts.

                Das wage ich anzuzweifeln.
                Weder Firefox noch IE unterstützen :selection - und das wäre m.W. die einzige Möglichkeit, nur den markierten Text in einem textarea-Element anders als den restlichen Text in diesem Element zu formatieren.

                cu,
                Andreas

                --
                Warum nennt sich Andreas hier MudGuard?
                Schreinerei Waechter
                O o ostern ...
                Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.