Beiträge von BrokenHeart

Du benötigst Hilfe bezüglich Firefox? Bitte stelle deine Frage im öffentlichen Bereich des Forums und nicht per Konversation an wahllos ausgesuchte Benutzer. Wähle dazu einen passenden Forenbereich, zum Beispiel „Probleme auf Websites“ oder „Erweiterungen und Themes“ und klicke dann rechts oben auf die Schaltfläche „Neues Thema“.

    Habe jetzt nochmal das oben beschriebene Problem mit einem fast neuen Profil getestet (keine Skripte, keine userChrome.css) und nur ein Tab mit der 'about:config'-Seite geöffnet:


    Mit LoadingBar-Skript :

    Ohne LoadingBar-Skript:

    Die Werte von gestern habe ich zwar heute nicht erreicht, aber es ist offensichtlich, dass es bei aktiviertem Skript immer! eine erhöhte CPU-Grundlast erzeugt wird. Eine Erklärung wäre es, dass im Hintergrund auch noch Webseiten/Daten geladen werden, die zwar keine sichtbare Animation erzeugen, aber das Skript veranlassen, irgendwas zu tun. Oder das Skript pollt ständig auf irgendwas. :/

    Ich weiß es nicht und habe auch mangels Motivation und Ahnung nicht vor, das näher zu untersuchen.

    Sören Hentzschel :

    Danke für die umfangreiche Antwort.

    Mir ist klar, dass die Animation Performance kostet. Da ich aber doch mal annehme, dass die Darstellung in der FF-Oberfläche asynchron zum Laden der Webseite verläuft, dürften sich die realen Auswirkungen auf die Gesamt-Performance in Grenzen halten.


    Vielleicht habe ich mich etwas missverständlich ausgedrückt. Ich meinte, dass das alleinige Laden des Skripts, also schon sein einfaches Vorhandensein, bei mir eine gewisse Grundlast erzeugt (momentan ca. 10% CPU-Last durch FF). Also auch wenn ich keine neue Seite lade und keine Animation dargestellt wird. Entferne ich das Skript wieder aus dem Chrome- Verzeichnis und starte den FF neu, ist die CPU-Last wieder normal bei (0-2%). Da ich aber nicht sicher bin, ob das Skript die alleinige Ursache für diesen Anstieg ist, oder irgendeine andere Anpassung dafür (mit-)verantwortlich ist, werde ich das später nochmal mit einem neuen Profil und nur diesem Skript testen.

    Bei mir funktioniert das Skript aus #2 auch in FF75 mit aktivierter Megabar (browser.urlbar.update1 = true) . In FF77 wird nur der Rahmen um die urlbar animiert.


    :!:Ich wäre vorsichtig bei dem Skript: Bei mir erzeugt dieses Skript in FF75 und FF77 eine ständige Gesamt-Prozessorlast von ca 12%-17%. Vielleicht kann ja aborix oder Sören was dazu sagen...:/

    Wenn immer die in den Einstellungen angegebene Startseite aufgerufen werden soll, kannst du es mit diesem geänderten Script versuchen. Dann wird der Wert direkt aus der Konfiguration gelesen und du musst sonst nichts ändern:


    Die Sprache wurde von Mozilla-Gründer Brendan Eich in gerade mal einer Woche erfunden. Auch wenn sich seit dem viel getan hat, die grundlegenden Prinzipien der Sprache sind natürlich geblieben.

    Ich weiß jetzt natürlich nicht wie das 'Ur-Javascript' aussah und was erst später alles dazu gekommen ist, aber es wundert mich schon , dass man so was in nur einer Woche auf die Beine stellen kann. Natürlich ist die Sprache nicht einfach aus dem Nichts entstanden, sondern man hatte sich ja ganz offensichtlich an den C-Sprachen orientiert. Vor allem, wenn man bedenkt, dass Javascript ( zumindest in der heutigen Form) fast alle Programmiersprachen-Paradigmen abdeckt (objektbasiert, funktional, etc.) und es im Gegensatz zu stark/statisch typisierten Sprachen für den Interpreter schwerer und weitaus komplizierter ist daraus lauffähigen Code zu erzeugen, ist es um so erstaunlicher, dass man so etwas in so kurzer Zeit entwickeln kann. Der JS-Interpreter muss bei den vielen Möglichkeiten in JS seinen Programmierwillen auszudrücken, schon (etwas übertrieben) fast KI-Fähigkeiten haben, um das gewünschte Ergebnis zu liefern. Das stell ich mir nicht sonderlich einfach vor. Dagegen ist z.B. ein C-Compiler , den es ja dank seiner Einfachheit immer als erstes für neue Systeme gibt, ein rechter schlichter Ansatz...

    Semikolons sind in Javascript - von wenigen Ausnahmen abgesehen - optional und werden falls nötig automatisch eingefügt.

    Das ist etwas was mir an Javascript auch prinzipiell nicht gefällt, dass es sehr wenige Dinge gibt, die ich explizit angeben muss. Am schlimmsten ist das implizite Umwandeln von einem Typ in einen anderen. Alles ist irgendwie 'Objekt' und kann ohne Probleme zugewiesen und kopiert werden und alles kann ich verkürzt darstellen (als Beispiel '=>'-Aufruf). Ich glaube, wenn man wütend mit der Faust auf der Tastatur herum hämmert kommt immer noch interpretierbarer Code dabei heraus.;)


    Da ich aber noch JS-Anfänger bin, will ich mich mit meiner Kritik nicht zu weit aus dem Fenster lehnen, sonst krieg ich von Sören und aborix geschimpft und das wäre für mich psychisch sehr belastend...:(


    In diesem Fall ist es aber ein Kopierfehler meinerseits gewesen. Ich benutze immer Semikolons (komme aus der C/C++ Ecke).

    aborix


    Vielen Dank.:) Mit dem geänderten Aufruf funktioniert's jetzt.:thumbup:


    Btw: Mir ist schon früher in der Konsole aufgefallen, dass er "makeUri" als "ReferenceError" angemeckert hat ( auch schon in früheren FF-Versionen) . Da es aber immer so funktionierte, hatte ich es einfach so gelassen...


    Hier nochmal das ganze Skript, mit der Änderung von 2002Andreas (Danke!) und den Verzeichnissen von Büssen ;):

    Bei mir ändert sich dadurch leider nichts. Muss dass zeitverzögert aufgerufen werden...? :/


    Wenn ich die drei Zeilen hinzufüge, wird die Schaltfläche Speichern in gar nicht mehr angezeigt.

    Deswegen hatte ich ja auch geschrieben:

    Habe ich schon ausprobiert. Funktioniert überall, nur in diesem Script-nicht ;( . Keine Ahnung warum...

    Egal, man kann's ja auch in die userChrome.css schreiben...

    Am besten wäre, wenn man diesen Code gleich in das Script einfügen könnte, was sich aber meinen Kenntnissen entzieht.

    Bin jetzt zu faul, um zu testen: :-) Baue mal folgenden Code vor der Zeile 28 (beginnend mit let button) ein:


    Ist nur eine Vermutung.

    Das funktioniert so leider nicht. Damit hast du ja erst mal nur eine Variable deklariert/definiert.


    Um den CSS-Code auch 'bekannt' zu machen musst du folgenden Code ausführen:



    Habe ich schon ausprobiert. Funktioniert überall, nur in diesem Script-nicht ;(. Keine Ahnung warum...


    Aber ich denke aborix wird's richten ;)


    ...Wieviel vom CSS-Code, aus dem du hier ein Geheimnis machst, ist wirklich auf deinem Mist gewachsen? Wenn wir Helfer das alle machen würden, stünden im Forum nur Beiträge zu den Problemen, aber keine zu deren Lösung.

    Prinzipiell hast du recht. Ich versteh es auch nicht ganz. Aber ich glaube, Büssen wollte kein Geheimnis aus dem 'einzigartigen' Code machen, sondern hatte die Befürchtung, irgendwelche (persönlichen) Informationen preiszugeben. Von daher würde ich das ganze nicht so hoch hängen...:)

    Den aus Beitrag Nr. 4

    Doofe Frage von mir, er hat ja nur einen gepostet...


    Eigentlich meinte ich auch den CSS-Code von Büssen, weil der ja das (sein) Problem behebt (umgeht) , den hat er aber noch gar nicht hier 'veröffentlicht'....

    Auch der Code von Büssen funktioniert hier nicht.

    Der fehlende Hintergrund ist klar, aber auch bei hover auf einen Eintrag passiert nichts.

    Das 'Hovern' zeigt er bei mir auch nicht an, aber beim Klick auf einen Eintrag speichert er die Datei dort ab.


    Welchen Code von Büssen hast du denn verwendet?

    Ich habe jetzt die richtige Datei von Büssen bekommen (Danke!) und es ist genauso, wie ich weiter oben beschrieben habe. Durch die Verwendung von -moz-appearance: none !important; und die extrem umfangreiche und fast vollständige Anpassung der Popups, wird das Problem in seinem Fall vermieden. Ob das aber eine Lösung für alle ist, wage ich aber zu bezweifeln, da man hier bei fast jedem Aspekt der Darstellung eine Regel anwenden müsste. Die entsprechende Datei müsste Büssen dann aber selber hier posten, da er es ja nicht veröffentlichen wollte...

    Bei mir funktioniert es auch in FF77 (Menuitems werden angezeigt und die Dateien werden im angegebenen Verzeichnis abgespeichert). Allerdings fehlt auch hier der komplette Hintergrund für das Menu-Popup.


    Soweit ich mich erinnere, benutzen Büssen und FuchsFan sehr globale Regeln zur Anpassung des Menü-Hintergrunds (wie man auch an dem oberen Screenshot erkennen kann). Ich könnte mir vorstellen, dass es an dem dort verwendeteten "-moz-appearance: none !important;" und der weitgehenden, eigenen Anpassung des Menü-Hintergrunds liegt.


    Büssen: Könntest du mal deine 'userChrome.css' diesbezüglich hier posten?