Skript für Add-ons Update

  • Wenn ich richtig liege, ist der Fehler in folgendem Teil des Codes.

    JavaScript
    categories.addEventListener('mousedown', function onMousedown(event) {
                  if (event.target != item && event.target.parentNode != item) {
                    item.hidden = true;
                    categories.removeEventListener('mousedown', onMousedown);
                  };
                });

    Mit <3lichem Gruß

    Mira

  • Ach so!

    Und verstehe ich diese Aussage richtig, wenn ich sage, es ist zu viel für die Laufzeitumgebung?

    Zitat

    InternalError

    Der Typ InternalError wird verwendet, wenn eine Ausnahme in der JavaScript-Laufzeit-Engine auftritt. Das kann auf ein Problem in deinem Code hindeuten, muss es aber nicht.

    In den meisten Fällen tritt InternalError nur in zwei Szenarien auf:

    • Wenn ein Patch oder ein Update für die JavaScript-Laufzeitumgebung einen Fehler enthält, der Ausnahmen auslöst (dies kommt sehr selten vor)
    • Wenn dein Code Elemente enthält, die für die JavaScript-Engine zu groß sind (z. B. zu viele Switch-Cases, zu große Array-Initialisierungen, zu viele Rekursionen)

    Der beste Ansatz zur Lösung dieses Fehlers besteht darin, die Ursache anhand der Fehlermeldung zu identifizieren und deine App-Logik nach Möglichkeit umzustrukturieren, um die plötzliche Belastungsspitze der JavaScript-Engine zu beseitigen.

    Quelle: https://kinsta.com/de/blog/fehler…/#internalerror

    Update.

    Wenn ich zweimal hintereinander das Script ausführe, also zweimal den Button betätige,

    wird das Script beim zweiten Aufruf richtig ausgeführt!

    Mit <3lichem Gruß

    Mira

    Einmal editiert, zuletzt von Mira_Belle (17. November 2022 um 10:48)

  • Hallo zusammen.

    Ich kann das: Skript für Add-ons Update hier auch bestätigen.

    Vielleicht kann aborix sich das mal anschauen.
    Wenn dann kann nur er es wieder richtig zum Laufen bringen.
    Mfg.
    Endor

    Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:135.0) Gecko/20100101 Firefox/135.0
    OS: Windows 10 pro 64 bit und Windows 10 Home 64 bit
    Meine Scripte Sammlung: https://github.com/Endor8/userChrome.js
    Kein Support per PN. Fragen bitte im Forum stellen!

    • Hilfreichste Antwort

    Testet mal bitte. Falls es funktioniert, dauert es zwei Sekunden, bis die Updates angezeigt werden.

  • ;(

    Wieder so eine Zeitschleife.

    Leider funktioniert das Script so nicht bei mir.

    Habe beide Werte auf 5000 hochgestellt und auch da funktioniert es nicht.

    Und auch bei dem neuen Script ist es so, dass beim zweiten Mal ausführen es richtig funktioniert.

    Und wenn der Fehler durch

    let frameScriptURI = 'data:,(' + frameScript.toString() + ')()';

    und/oder

    window.gBrowser.selectedBrowser.messageManager.loadFrameScript(frameScriptURI, true);

    verursacht wird, müsste man dann nicht da ansetzen? :/

    Leider verstehe ich von JavaScript so gar nichts.

    Mit <3lichem Gruß

    Mira

  • Mal wird es angezeigt wieder, mal auch nicht.

    Ja ist hier auch so.

    Ich hatte eine in der Konsequenz ähnliche Lösung wie aborix (Verzögerter Reload des selektierten Tab), aber funktionierte auch nicht zuverlässig. ;( Deswegen hatte ich das Skript ja auch aus meinem Beitrag wieder entfernt:

    Edit: Skript wieder gelöscht, funktioniert nur unter bestimmten Bedingungen?!

    Gruß BrokenHeart

    "success has many fathers, failure is an orphan"

  • Nachtrag!

    Das Script funktioniert ohne jegliches content.setTimeout(function() {

    richtig, wenn man oben z.B. den Reloadbutton tätigt!

    Also, wenn die "Seite" ein zweites Mal geladen wird!

    Eventuell gibt es ja eine Funktion für Reload?

    Wäre dann zwar unelegant, aber Hauptsache es funktioniert und das Ergebnis stimmt.

    Mit <3lichem Gruß

    Mira

  • Das Script funktioniert ohne jegliches content.setTimeout(function() {

    richtig, wenn man oben z.B. den Reloadbutton tätigt!

    Nein, das tut es so auch nicht verlässlich! Denn genau das war auch der Ansatz, den ich für meinen erfolglosen Fehlerbehebungsversuch in Beitrag #14 verwendet habe.

    Ich habe die alte Version über die entsprechende Forenfunktion mal wieder hergestellt:

    BrokenHeart
    15. November 2022 um 02:21

    Gruß BrokenHeart

    "success has many fathers, failure is an orphan"

  • :/

    Ich nutzte für die Versuche:

    Drücke den "Button", und die Seite "about:addons" wird geladen,

    nach einem kurzen Augenblick erscheint dann die Schaltfläche Verfügbare Updates anzeigen

    und auch Rechts die Schaltfläche Verfügbare Updates.

    Beide Schaltflächen scheinen ohne Funktion :!:

    Drücke ich jetzt in der "Navbar" den Reloadbutton, wird nach der Funktion nun

    unter Verfügbare Updates auch das Add-on gezeigt für welches ein Update vorhanden ist.

    Ganz ohne Script funktionieren beide Schaltflächen.

    Mit <3lichem Gruß

    Mira

    2 Mal editiert, zuletzt von Mira_Belle (17. November 2022 um 23:43)

  • So wird Neuladen ins Skript eingebaut, vorsichtshalber wieder mit Verzögerung:

    Vor dieser Zeile:

    JavaScript
                categories.addEventListener('mousedown', function onMousedown(event) {

    einfügen:

    JavaScript
                content.setTimeout(function() {
                  content.location.reload();
                }, 1000);
  • :love:

    So, ...

    ... funktioniert das Script bei mir.

    Bitte um feedback.

    Nachtrag :!:

    ;(

    Habe ca. 15 bis 20 Mal den Fuchs neu gestartet und das Script (den Button) ausprobiert.

    Leider funktionierte es einmal nicht.

    Eventuell doch noch der Wurm drinn.

    2. Nachtrag!

    Leider funktioniert das Script nicht zuverlässig. ;(

    Eben getestet und von zwei Updates wurde nur eins angezeigt.

    Test wiederholt, wieder nur ein Update angezeigt.

    Erst beim 3. Test funktionierte es wie gewünscht.

    Mit <3lichem Gruß

    Mira

    4 Mal editiert, zuletzt von Mira_Belle (18. November 2022 um 17:12)