JavaScript funktioniert nicht

  • Firefox-Version
    immer aktuell: 80.0 (32bit)
    Betriebssystem
    Win10

    Hallo Feuerfüchse,

    zu meiner Überraschung mag FF folgendes Script nicht ausführen und reagiert einfach mit absolutem Nichtstun:

    intro und texte sind die Namen der überordneten Frames, die z.B. auch von Link 1 korrekt adressiert werden.

    Ziel ist es mit einem Link den Inhalt zweier Frames zu ändern. Dazu habe ich im Netz mehrere Code-Beispiele gefunden, die in FF aber alle nicht zum Erfolg führen. Außer der kleinen Info unten links, wenn man mit der Maus über den Link geht (Aufruf korrerkt), bewegt sich genau nichts.

    Avast Secure, Google Chrome (ignoriert CSS), Internet Explorer (Skripts/Active-X muss zugelassen werden), Edge und Safari reagieren dagegen wie erwartet. JavaScript ist im FF natürlich aktiviert, was auf der entsprechenden Testseite auch bestätigt wird.

    Bitte: Nicht über Frames diskutieren, das ist hier nicht das Thema. Interessant ist lediglich die JS-Funktionalität. Benötigt FF eine besondere Disziplin in der JS-Syntax, die ich als JS-Laie nicht erkenne?

    Lieben Dank im Voraus!

    kritzelt der Scriptor

    Der Fuchs und das Mädchen -ein schöner Film! der zeigt, dass man einen Fuchs nicht versuchen sollte zu zähmen ;)

  • Hallo Sören,

    nicht gepostet habe ich natürlich die angesteuerten htm-Seiten, die aber alle im selben Verzeichnis liegen wie die genannte Seite. Die parent liegt ein Verzeichnis oberhalb, wird aber (vgl. Link 1) gefunden.

    Der Vollständigkeit halber das ganze Konstrukt als ZIP im Anhang.

    Grüße und Dank!

    FirefoxCamp.zip

    Der Fuchs und das Mädchen -ein schöner Film! der zeigt, dass man einen Fuchs nicht versuchen sollte zu zähmen ;)

    Einmal editiert, zuletzt von Scriptor (26. August 2020 um 15:04)

  • Schade Sören, dass Du zwar nach vollständigem Code fragst, ihn auch bekommst, sich jetzt aber gar nichts mehr tut.

    Hat denn jemand anderes eine Idee, warum das Script im FF nicht funktioniert?

    Vielen, lieben Dank!

    Der Fuchs und das Mädchen -ein schöner Film! der zeigt, dass man einen Fuchs nicht versuchen sollte zu zähmen ;)

  • Obig als auch im ZIP fehlt was: </script>

    Internet Explorer funktioniert, Chromium, auch, nur Firefox nicht, aus der Konsole:

    Code
    Uncaught DOMException: Access to property denied links.htm:18
        Double file:///C:/Temp/FirefoxCamp/text/links.htm:18
        <anonym> javascript:Double('intro_2.htm','text_2.htm'):1

    Aus der MDN

    https://developer.mozilla.org/de/docs/Web/Ja…y_access_denied

    Aus einem frame in ein anderes frame dürfte nicht anders sein, du brauchst schon was in der Hauptseite. Persönlich halte ich frames für überholt.

    Wir sind keine Beschwerdestelle, hier gibt es nur Lösungen! Meine Glückszahl hier: 92.

    3 Mal editiert, zuletzt von .DeJaVu (28. August 2020 um 13:13)

  • Schade Sören, dass Du zwar nach vollständigem Code fragst, ihn auch bekommst, sich jetzt aber gar nichts mehr tut.

    Es sind noch keine zwei Tage seit dem vergangen. Bitte ein bisschen mehr Geduld… Ich bin berufstätig und habe auch privat einige Dinge, die Zeit in Anspruch nehmen. Ich arbeite mit Zeit-Budgets, weil ansonsten gar nicht alles unter einen Hut zu bekommen wäre, was ich mache. Du möchtest, dass ich Website-Code prüfe, was nun einmal deutlich aufwändiger ist als eine durchschnittliche Support-Anfrage. Jetzt war auch noch ganz aktuell der Launch des komplett neu entwickelten Firefox für Android, was eine erhöhte Aktivität in dem Bereich erfordert und von mir derzeit priorisiert behandelt wird. Unter Umständen heißt das, dass eine Anfrage wie diese auch mal zwei oder drei Tage warten muss, ehe ich Zeit finde, mir das überhaupt mal genauer anzusehen, obwohl du mich in der Zwischenzeit vielleicht in anderen Themen antworten siehst. Einfach, weil diese Themen eine zeitnahe Antwort erfordern oder weil die Antworten darauf einfach und mit weniger Zeitaufwand zu erledigen sind.

  • Was du da vorhast, funktioniert in Firefox aus Sicherheitsgründen so nicht. Und zwar schon seit Gecko 1.9, also seit zwölf Jahren (!). Es gibt einen Schalter in about:config, den man ändern kann, damit es funktioniert, aber den Schalter nenne ich hier aus drei Gründen nicht:

    1. An erster Stelle: Das Verhalten von Firefox hat Sicherheitsgründe.

    2. Man kann nicht von allen Nutzern der Website erwarten, dass sie etwas umstellen.

    3. Stellt man den Schalter in der Nightly-Version um, stürzt Firefox sogar ab, und man kommt bei aktivierter Sitzungswiederherstellung in eine Schleife, wenn die Seite wieder geladen wird, weil es dann erneut zum Absturz kommt.

    Vielleicht ist es doch an der Zeit, genau das zum Thema zu machen:

    Bitte: Nicht über Frames diskutieren, das ist hier nicht das Thema.

    So baut man halt keine Websites im Jahr 2020…

  • Schönen guten Abend!

    .DeJaVu

    Der einzige script-Block wird in Zeile 13 meines ersten Code-Snipplets geöffnet und in Zeile 21 wieder geschlossen. Wo fehlt d.E. das </script>? Danke für den Tipp!

    Sören Hentzschel

    Sorry, wenn meine Nachfrage als Ungeduld angekommen ist. Es war nicht meine Absicht irgend jemand zu hetzen. Deine erste Antwort auf meine Frage kam nach gerade mal zehn Minuten. Dafür Dankeschön! Und das weckte dann vielleicht die Erwartung auf eine schnelle Lösung. Als dann nach zwei Tagen nichts mehr kam, war ich etwas verunsichert.

    Wenn FF ein Script wie meines aus Sicherheitsgründen blockiert, hat er ein Alleinstellungsmerkmal, das ich gerne verstehen würde. Was kann in all den anderen Browsern mit der verwendeten Technik denn so Böses angestellt werden? Es soll der Inhalt zweier Frames (könnten z.B. auch Bilder sein) auf der eigenen Domain gleichzeitig aktualisiert werden, das ist alles.

    Es mag sicher richtig sein, dass "man 2020 Websites so halt nicht baut..." Meistens.

    In einem kleinen Intranet, in dem ein config-Key durchaus für alle Nutzer umgestellt werden kann, ist dieses kurze Script vielleicht dennoch sinnvoller, als ein komplettes PHP/SQL-basidertes CMS aufzusetzen. Nicht zu vergessen die Websites, die seit Jahren erfolgreich laufen und nicht erst 2020 auf der grünen Wiese entstehen.

    frames haben immerhin die Ehrung eines Nachfolgers namens iframes erhalten. So igittigitt sind die so oft geschmähten Rähmchen dann wohl doch nicht - und modern HTML5-konform. Es ist eben auch so, dass handgenähte Schuhe für bestimmte Füße immer noch ihren Sinn haben und nicht alles aus dem 3D-Drucker sofort passt.

    Vielen Dank allerseits. Ich werde eine Lösung für meine Porblem finden und hier nicht von Wichtigerem ablenken.

    Schöne Grüße scriptor

    Der Fuchs und das Mädchen -ein schöner Film! der zeigt, dass man einen Fuchs nicht versuchen sollte zu zähmen ;)

  • frames haben immerhin die Ehrung eines Nachfolgers namens iframes erhalten. So igittigitt sind die so oft geschmähten Rähmchen dann wohl doch nicht - und modern HTML5-konform.

    Das sind doch zwei völlig verschiedene Paar Schuhe. Du nutzt Framesets und die wurden schon vor zig Jahren aus dem Standard entfernt. Dass es iFrames gibt, was ähnlich klingt, hilft dir nichts, weil du das nicht nutzt. Das hat auch überhaupt nichts mit "igittigitt" zu tun, sondern mit standardkomformer Entwicklung von Websites, und iFrames sind nach wie vor Teil des Standards, weil sie nach wie vor eine Daseinsberechtigung haben. Ein Nachfolger ist das nicht wirklich. Hält man sich nicht an Standards, darf man sich nicht wundern, wenn die Seite so nicht funktioniert. Und was du machst, ist wie gesagt bereits seit zwölf Jahren schon nicht mehr möglich - nicht, wenn es jeder Browser unterstützen soll. Daher passt auch die Aussage "Nicht zu vergessen die Websites, die seit Jahren erfolgreich laufen und nicht erst 2020 auf der grünen Wiese entstehen" nicht. Wie gesagt sprechen wir hier bereits von zwölf Jahren, seit dem das nicht mehr funktioniert. Und von heute auf morgen wird das auch nicht passiert sein, dem dürfte also auch nochmal eine gewisse Vorlaufzeit vorausgegangen sein.

  • Obig als auch im ZIP fehlt was: </script>

    Diese Angabe muss dir reichen.

    Ich werde eine Lösung für meine Porblem finden

    Aber nicht in der Form und nicht für Firefox. In Firefox ist das so nicht möglich, und Frames sind Jahrtausendwende. Du kannst gerne in Vergangenem schwelgen, es hilft nur nicht ein Stück weiter. Viel Glück.

    Wir sind keine Beschwerdestelle, hier gibt es nur Lösungen! Meine Glückszahl hier: 92.

  • .DeJaVu Natürlich reicht Deine Angabe - Danke. Ich hatte die dezente farbliche Markierung der schließenden Klammer übersehen.

    Sören Hentzschel

    Ein kleines Workaround hat mein Problem gelöst. Während *.htm-Seiten auf unseren Rechnern mit dem FF verknüpft sind, werden *.html nun einfach mit Edge geöffnet. Also die Extension von index.* geändert - und schon funktioniert's auch mit dem Nachbarn...

    Gerne würde ich meinen Nutzern noch die Frage beantworten, worin denn die Gefahr in einem Skript besteht, das zwei Frames auf eimal aktualisiert. Einer witterte gar "feuerfüchsige Paranoia". In diesen Dingen ist er aber noch unbedarfter als ich. Magst Du uns aufklären?

    Schöne Grüße

    Scriptor

    Der Fuchs und das Mädchen -ein schöner Film! der zeigt, dass man einen Fuchs nicht versuchen sollte zu zähmen ;)

  • Nachdem mein Thread nun zweimal auf erledigt gesetzt wurde, ohne dass die Frage oben geklärt ist, frage ich schon, ob Begründungen bzw. Erläuterungen zu Behauptungen hier nicht so üblich sind ...

    Der Fuchs und das Mädchen -ein schöner Film! der zeigt, dass man einen Fuchs nicht versuchen sollte zu zähmen ;)

  • Ich habe den Status deswegen auf "erledigt" gesetzt, weil das Thema aus Support-Sicht erledigt ist - Firefox funktioniert, wie von Mozilla gewünscht, und daran lässt sich nichts ändern. Der Status hindert ja niemanden, zusätzliche Informationen bereitzustellen, falls jemand dazu in der Lage ist, das Thema ist ja nach wie vor offen.

  • 2002Andreas

    Hallo Andreas,

    die Frage bleibt: Was wird gefährdet und wodurch?

    Zitat

    ... worin denn die Gefahr in einem Skript besteht, das zwei Frames auf eimal aktualisiert.

    "Ist gefährlich" bleibt so leider ein leeres Postulat.

    Schöne Grüße

    Der Fuchs und das Mädchen -ein schöner Film! der zeigt, dass man einen Fuchs nicht versuchen sollte zu zähmen ;)