Simon: Fehler abfangen

Hallo Leute

Da ich gestern nie eine Antwort erhalten habe, frage ich halt gleich nochmals. Weiss jemand, wie man in Javascript einen Fehler abfangen kann?

Gruss Simon

  1. Hallo Leute

    Da ich gestern nie eine Antwort erhalten habe, frage ich halt gleich nochmals. Weiss jemand, wie man in Javascript einen Fehler abfangen kann?

    Gruss Simon

    Hallo Simon,

    Du solltest Dir das folgende Script anschauen: http://www.webaid.de/js/index.shtml?jav86.shtml

    Ich habe mir die funktionsweise noch nicht angeschaut, aber er scheint genau das zu machen, was Du willst. Hoffe, Dir weitergeholfen zu haben.

    Trotzdem kann ich mir diesen Hinweis nicht verkneifen: Du solltest die selben Fragen nie(!) mehrmals posten, weil Du Dir evtl. damit einige Feinde machen wirst...

    Gruß
    Thomas J.

    1. Hallo

      Nein, leider hat es nicht funktioniert, weil onError ja nur bei Bildern funktioniert, es sollte eigentlich nur eine Fehlermeldung unterdrücken.

      Trotzdem kann ich mir diesen Hinweis nicht verkneifen: Du solltest die selben Fragen nie(!) mehrmals posten, weil Du Dir evtl. damit einige Feinde machen wirst...

      Das Problem ist eben, dass wenn das Posting im Forum immer weiter nach hinten rutscht, es nicht mehr viele lesen und erst recht nicht beantworten, so komme ich halt nie zu einer antwort.

      Gruss Simon

      1. Hallo mal wieder,

        Nein, leider hat es nicht funktioniert, weil onError ja nur bei Bildern funktioniert, es sollte eigentlich nur eine Fehlermeldung unterdrücken.

        Nicht unbedingt. Der Internet Explorer kann mit diesem Event bestens umgehen und fängt tatsächlich die Fehlermeldung ab. Optional kann deine Funktion sogar details ausgeben oder bei Fehlern einfach nur schweigen. Ich nehme an, NS kapiert das nicht (wie bei etlichen anderen Events).

        Das Problem ist eben, dass wenn das Posting im Forum immer weiter nach hinten rutscht, es nicht mehr viele lesen und erst recht nicht beantworten, so komme ich halt nie zu einer antwort.

        Ich kann das natürlich verstehen, aber ich gebe meine Erfahrungen einfach nur weiter. Ich habe zum Beispiel nach doppelten Postings den folgenden Link erhalten: http://www.teamone.de/selfaktuell/forum/forumsfaq_2.htm#a3 Das lasse ich einfach mal im Raum stehen...

        Weiterhelfen kann ich dir deshalb nicht mehr (ausser den IE empfehlen, aber eingefleischte NSler würden lieber sterben - ist es nicht so? *grins*)

        1. Weiterhelfen kann ich dir deshalb nicht mehr (ausser den IE empfehlen, aber eingefleischte NSler würden lieber sterben - ist es nicht so? *grins*)

          Hallo

          Das Problem ist nicht mal der Netscape, sondern der IE, weil im NS der Fehler gar nicht auftreten kann (die entsprechende funktion wird nur im IE aufgerufen).

          Gruss Simon

          1. Und mal wieder hallo,

            Das Problem ist nicht mal der Netscape, sondern der IE, weil im NS der Fehler gar nicht auftreten kann (die entsprechende funktion wird nur im IE aufgerufen).

            Ich glaube, ich verstehe das Problem nicht ganz. Javascript-Errors sollten nur in der entwicklungsphase so abgefangen werden, oder der JS code wird jedesmal individuell gebildet.

            Für eine eindeutige auftrennung zwischen NS und IE kannst du z.B. dieses script verwenden: http://www.webaid.de/js/docs/jav03.shtml. Dann kann es nicht passieren, dass fehler auftreten, weil du browserspezifisch deine funktion aufrufst (und falls der eine browser mal nicht will, und du weisst es, kannst du ihn vor vorne herein erst gar nicht zulassen).

            Oder reden wir da aneinander vorbei?

            Gruß
            Thomas J.

            1. Hi

              Mein Script öffnet ganz einfach den Druckdialog. Bei Netscape ist das mit window.print() kein Problem, beim IE muss ich das mit WebBrowser1.ExecWB(6,2) machen. Das funktioniert alles gut, aber wenn ich beim IE abbreche (ich meine den Druckdialog, nicht während dem Laden), kommt eine Fehlermeldung, die ich eigentlich unterdrücken möchte. DAS ist das Problem.

              Gruss Simon

              1. Hallo Simon,

                Mein Script öffnet ganz einfach den Druckdialog. Bei Netscape ist das mit window.print() kein Problem, beim IE muss ich das mit WebBrowser1.ExecWB(6,2) machen. Das funktioniert alles gut, aber wenn ich beim IE abbreche (ich meine den Druckdialog, nicht während dem Laden), kommt eine Fehlermeldung, die ich eigentlich unterdrücken möchte. DAS ist das Problem.

                wie waere es denn, wenn Du die Fehlermeldung mal postest?
                Zum Thema nochmal posten: die meisten fangen immer ganz unten an und arbeiten sich dann nach oben durch alle Postings, also keine Panik. :)

                Gruss

                Thomas

                1. Hi,

                  Vorschlag: Geht in den Chat!

                  CU, Flanor ;-)

        2. Hi!

          Nicht unbedingt. Der Internet Explorer kann mit diesem Event bestens umgehen und fängt tatsächlich die Fehlermeldung ab. Optional kann deine Funktion sogar details ausgeben oder bei Fehlern einfach nur schweigen. Ich nehme an, NS kapiert das nicht (wie bei etlichen anderen Events).

          Falsch angenommen. Der Netscape kann das seit der Version 3 (JS1.1) und damit wahrscheinlich schon sehr viel laenger als der IE. Beschreibung siehe http://developer.netscape.com/docs/manuals/js/client/jsref/handlers.htm#1120097.

          Weiterhelfen kann ich dir deshalb nicht mehr (ausser den IE empfehlen, aber eingefleischte NSler würden lieber sterben - ist es nicht so? *grins*)

          Jawoll. Lieber stehend sterben als knieend leben. ;-)

          So long

  2. Hi Simon

    Weiss jemand, wie man in Javascript einen Fehler abfangen kann?

    Klar: richtig programmieren!
    Am besten wird es sein, wenn Du uns einfach mal den Quellcode zeigst. Vielleicht liegt es ja daran, dass du den Rueckgabewert von ExecWB nicht auffaengst (was ich mir eigentlich nicht vorstellen kann). Programmierst du mit JScript oder VBScript oder sonstwas?

    MfG Simon
    (wenn du hier oefter schreibst, muss ich wohl demnaechst meinen Nachnamen angeben :-) )