Lorsque vous définissez:
<menupopup id="inlinetransContextMenu" position="end_after">
<image id="preficon" value="pref" />
<menuitem id="translator-context-menuitem-preferences"
label="preferences" onclick="alert('horay')" />
</menupopup>
Votre pop-up se compose de deux éléments, un image
et un menuitem
. Les éléments d'une fenêtre contextuelle sont disposés verticalement pour que l'image soit au-dessus de l'élément de menu.
Si vous voulez associé l'image avec l'élément de menu, vous devez le faire différemment, comme décrit dans le documentation:
A menuitem
comme une propriété image
qui devrait être le chemin vers l'icône. En outre, vous devez donner il la classe menuitem-iconic
pour l'icône pour montrer (il est une classe de style prédéfini (probablement une liaison de XBL)):
image
Type: URL de l'image
L'URL de l'image à apparaître sur l'élément. Si cet attribut est vide ou absent, aucune image n'apparaît. La position de l'image est déterminée par les attributs dir et orient.
Remarque: Le menuitem doit avoir une classe de menuitem-iconic pour que l'image apparaisse.
donc votre définition devrait ressembler à:
<menupopup id="inlinetransContextMenu" position="end_after">
<menuitem id="translator-context-menuitem-preferences"
image="chrome://inlinetrans/skin/pref.png"
class="menuitem-iconic"
label="preferences"
onclick="alert('horay')" />
</menupopup>
Je ne comprends pas votre autre problème: pourquoi lorsque je tente de supprimer l'image sur la barre d'état ne change pas du tout ma barre d'état. Qu'est-ce que supprime signifie dans ce contexte? Voulez-vous supprimer l'icône? Ou changer?
Mise à jour:
Vous devez définir image
et label
comme attributs:
<statusbarpanel id="status-bar-intrans"
context="inlinetransContextMenu"
onclick="overlay.clickIcon(event)"
onmouseover="var elmt=document.getElementById('status-bar-intrans');if ('enabled' == overlay.status) { elmt.tooltipText= 'inlinetrans dalam kondisi aktif';} else { elmt.tooltipText='inlinetrans dalam kondisi tidak aktif'; }">
image="chrome://youraddon/skin/image.png"
label="inlinetrans" />
et changer l'attribut image
. Ou via src
et CSS. Tout est décrit dans le documentation.
Il serait utile que vous puissiez publier une version plus minimale de votre code - juste assez pour que nous puissions voir ce que vous essayez de faire, et déterminer où le problème est. – MatrixFrog