BackUp-Script funktioniert in Nightly, das Icon ist aber verschwunden

  • Firefox-Version
    Firefox 74 Nightly
    Betriebssystem
    Windows 10

    Für das Icon ist nun ein leerer Platz in der via Script erzeugten Statuszeile... funktionieren tut es..

    Firefox 72

    Firefox 74 Nightly

    In Firefox 72 ist das Icon vorhanden mit dem identischen Code. Woran kanns liegen?

  • Ersetze in Zeile 114 die Konstante AppConstants.BROWSER_CHROME_URL wieder durch "chrome://browser/content/browser.xhtml", also:

    JavaScript
    var cssStr = '@-moz-document url("chrome://browser/content/browser.xhtml"){'

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • Gegen die Verwendung von AppConstants.BROWSER_CHROME_URL spricht nichts, man muss es halt nur richtig verwenden. ;)

    Statt:

    JavaScript
    '@-moz-document url(AppConstants.BROWSER_CHROME_URL){'

    muss es heißen:

    JavaScript
    '@-moz-document url(' + AppConstants.BROWSER_CHROME_URL + '){'

    Wir hatten das Thema vor zwei Tagen ja erst hier, dass das eine Konstante und kein Text ist. Also besteht die Lösung darin, es entsprechend nicht als Text zu verwenden.

  • Wundert mich jetzt etwas, es hat mich allerdings ebenfalls gewundert, dass die Konstante hier nicht funktionierte. Aber es sind doch auch bei Boersenfeger keine Anführungszeichen vorhanden. Warum muss man nun dennoch wieder Anführungszeichen mit einfügen? Warum kann der Konstantenname nicht allein in der Klammer stehen? Wegen der äußeren Anführungszeichen von cssStr?

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • Aber es sind doch auch bei Boersenfeger keine Anführungszeichen vorhanden.

    Siehe Code in meiner ersten Codebox, das stammt 1:1 aus dem Beitrag von Boersenfeger. Da ist ein Anführungszeichen ganz links und ein Anführungszeichen ganz rechts.

    Warum kann der Konstantenname nicht allein in der Klammer stehen?

    Genau so war es ja vorher, weswegen AppConstants.BROWSER_CHROME_URL zwischen den Anführungszeichen und deswegen auch nur Text war. Wenn die Konstante interpretiert werden soll, muss der Text unterbrochen und danach wieder fortgesetzt werden.

    Oder um die sogenannte string concatenation vereinfacht darzustellen:

    Wenn KONSTANTE mit 'hallo' definiert, dann ergibt:

    'text 1 ' + KONSTANTE + ' text 2'

    diese Ausgabe:

    text 1 hallo text 2

    und demzufolge ergibt

    '@-moz-document url(' + AppConstants.BROWSER_CHROME_URL + '){'

    das hier:

    '@-moz-document url(chrome://browser/content/browser.xhtml){'

    (oder mit XUL, je nach Version)

  • Also sollten einfach alle Anführungsstriche in der Zeile verschwinden!?

    Die Zeile sehe dann so korrekt aus?

    JavaScript
        var cssStr = @-moz-document url(AppConstants.BROWSER_CHROME_URL){
  • Nein, das kannst du nicht machen, denn @-moz-document url( und ) und { am Ende der Zeile sind Text und müssen in Anführungszeichen stehen.

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • ch habe die Zeile so eingefügt, dann funktioniert das Backup:


    var cssStr = '@-moz-document url(' + AppConstants.BROWSER_CHROME_URL + '){'

    So steht es ja auch in Beitrag #6 von Sören.

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress