我想问一些问题: 我应该采取哪些措施在mozilla firefox上创建界面并处理所有这些界面。 我想做的接口是:
由标签和图片组成的状态栏,如果右键菜单上的状态栏将显示活动插件(插件菜单无效隐藏)和首选项。
右键单击当前网页,在浏览器上将显示上下文菜单“terjemahkan”,左上角有图片。
当我选择工具菜单上的选项按钮>>插件,用户可以使用单选按钮调整这些插件设置
选择上下文菜单后,浏览器窗口将显示所需的结果
我所做的步骤是:
我成了状态栏,但为什么我按照指示制作时不想出现的图片。以及在上下文菜单中,图像不能像一般情况一样出现在菜单的左上角。
<?xml version="1.0"?>
<overlay id="inline_trans"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
xmlns:html="http://www.w3.org/1999/xhtml">
<!--
<script type="application/x-javascript" src="chrome://translator/content/script.js" />
<script type="application/x-javascript" src="chrome://translator/content/interface.js" />
-->
<!-- menu klik kanan pada halaman web -->
<popup id="contentAreaContextMenu">
<menuseparator />
<menuitem id="intransContextMenuPage"
image="chrome://inlinetrans/skin/imagesOn_kecil.png"
label="terjemahkan dengan intrans"
oncommand="inline.script.getText()" />
</popup>
<!-- pilihan menu pada status bar -->
<popupset>
<menupopup id="intransContextMenu">
<menuitem label="intrans nonaktif"
image="chrome://inlinetrans/skin/imagesOff_kecil.png"
hidden="true"/>
<menuitem label="intrans aktif"
image="chrome://inlinetrans/skin/imagesOn_kecil.png"
hidden="false"/>
<menuseparator />
<menuitem label="preferensi"/>
</menupopup>
</popupset>
<!-- ========================================= -->
<!-- statusbar-->
<statusbar id="status-bar">
<statusbarpanel id="status-bar-intrans"
image="chrome://inlinetrans/skin/imagesOn_kecil.png"
label="intrans"
context="intransContextMenu"
tooltiptext="intrans versi 1.0"
/>
</statusbar>
</overlay>
用户界面选项偏好设置
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<!DOCTYPE overlay SYSTEM "chrome://inlinetrans/locale/options.dtd">
<dialog xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
id="translate-preferences"
title="&options.title;"
buttons="accept, cancel"
style="padding:0px; margin:0px;"
ondialogaccept="options.save()"
onload="options.init();"
onunload="options.deconstruct();">
<!--
<stringbundleset id="stringbundleset">
<stringbundle id="locale-properties" src="chrome://translator/locale/translator.properties"/>
<stringbundle id="properties" src="chrome://translator/content/translator.properties"/>
</stringbundleset>
-->
<!--
<script src="chrome://inlinetrans/content/options.js" />
-->
<description value="&options.desc;"
style="
background: #fff url('chrome://inlinetrans/skin/options.png') no-repeat;
min-width:400px;
min-height:40px;
padding-left:55px;
padding-top:10px;
margin:0px;
border-bottom: 2px solid #757575;
font-size:1.5em;"/>
<vbox style="padding:10px;">
<groupbox>
<caption label="&options.ui;"/>
<label value="&options.results.desc;"/>
<radiogroup id="display.results" style="padding-left:20px;">
<radio id="results.cat" value="category" label="&options.results.cat;"/>
<radio id="results.noncat" value="noncategory" label="&options.results.noncat;"/>
</radiogroup>
</groupbox>
</vbox>
</dialog>
对我来说最令人困惑的是我如何处理所有处理程序界面。
例如:
更改插件的状态,从活动状态更改为非活动状态
获取所选单选按钮的值
答案 0 :(得分:1)
我无法回答你的所有问题,部分原因是因为我不知道你想要什么,但这是一个开始:
要显示菜单项旁边的图像,您必须将该组menuitem-iconic
作为described in the documentation:
<menuitem id="intransContextMenuPage"
class="menuitem-iconic"
image="chrome://inlinetrans/skin/imagesOn_kecil.png"
label="terjemahkan dengan intrans"
oncommand="inline.script.getText()" />
我不确定状态栏,我会关注the description in the documentation:
以下类可用于为元素设置样式。应该使用这些类而不是直接更改元素的样式,因为它们更适合用户选择的主题。
statusbarpanel-iconic
使用此类可以在状态栏面板上显示图像。使用src
属性指定图像。将显示图像而不是标签。
您可以通过获取对radiogroup
的引用来获取所选单选按钮的值,访问其属性selectedItem
,该属性为您提供radio
元素并阅读{ {3}}属性:
var value = document.getElementById('display.results').selectedItem.value;