Close-Button ändern

  • Hallo!

    Nach einer bestimmten aktion ersetze ich damit das "X" zum schliessen eines tabs durch ein anderes icon:

    closeButton.setAttribute("src", "data:image/png;base64,iVBORw0KG....t5m+wtAAAAAASUVORK5CYII="); \

    Nun möchte ich den button aber nicht immer durch das gleiche icon ersetzen und würde das gerne mittels einer variable lösen. So hat es nicht funktioniert:

    var icon = "data:image/png;base64,iVBORw0KG...t5m+wtAAAAAASUVORK5CYII=";
    closeButton.setAttribute("src", icon); \

    Wie wäre es richtig?

    Danke!

  • Wie ist denn closeButton definiert?
    Und kann man überhaupt das Attribut src zuweisen? Denn der Tag für die Close-Funktion schaut ja so aus:

    Code
    <xul:image  anonid="close-button" xbl:inherits="fadein,pinned,selected=visuallyselected" class="tab-close-button close-icon" role="presentation" fadein="true"/>

    Ich würde von daher erst einmal eher von diesem CSS ausgehen:

    Code
    .close-icon {
       list-style-image: url('chrome://global/skin/icons/close.svg');
    }

    Windows 10 | FF 62.0 (64-Bit) / FF 61.0 (64-Bit) / FF 63.0 (64-Bit)

  • Zitat

    Wie ist denn closeButton definiert?

    let closeButton = document.getAnonymousElementByAttribute(tab, "anonid", "close-button"); \

    Zitat

    Und kann man überhaupt das Attribut src zuweisen?

    Scheinbar ja, da mein ursprünglicher code ohne variable funktioniert. Die definition von closeButton kann also eigentlich auch nicht falsch sein.

  • Bei den Codes steht am Ende ein Backslash. Falls die Codes Teil eines Strings sind, muss beim zweiten Code am Ende der ersten Zeile ebenfalls ein Backslash stehen.

  • Ich frage nur, weil ich mir nicht sicher war, ob der Code ohne Variable funktioniert. Und ich selbst noch nie dieses Element manipuliert habe und wenn, es ganz allgemein im CSS tun würde. :)
    Ich sehe gerade, dass aborix nach dem Backslash fragt. Ich dachte erst, dass dies ein Überbleibsel eines Kommentars sei, aber da es zweimal vorkommt...
    Ansonsten sehe ich an der var nichts auffälliges. "icon" ist nicht reserviert, alles gut.
    Ich könnte mir höchstens vorstellen, dass im src-Wert irgendetwas nicht passt.

    Windows 10 | FF 62.0 (64-Bit) / FF 61.0 (64-Bit) / FF 63.0 (64-Bit)