1.什么是XUL
XML User Interface
Language,发音为:zool,他是为开发更快更简单的Mozilla浏览器而开发的. 这是一个基于 XML的语言
,所以XML的所有特性都适用于XUL.
XUL是为了在Mozilla上开发而发展的一种语言,而Mozilla正在日益成为象Java一样的应用程序开发平台。现在Mozilla在许多操作系
统上都有移植,因此可以基于Mozilla实现跨平台的开发。
学习XUL你需要了解的三项基本技术是:HTML,CSS和XML的基本知识。
开发和测试XUL你需要安装Mozilla/Firefox,外加文本编辑器(因为开发程序所用的文件格式都是文本的)。
我所参考的英文教程
.
2.一个最简单的XUL
先来看一个最基础的xul文件(打开一个文本文件,拷入下面代码,并另存为FindFiles.xul):
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<window
id="findfile-window"
title="Find Files"
orient="horizontal"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
...
</window>
从文件头可以看出,这就是一个xml文档,并且指名了样式库
window标签,是XUL的最基本的标签,类似于HTML的Body,表示文本的开始,所有元素都必须包含在标签中,并且所有标签与属性都必须小写。
3.基本元素
为了能快速上手,我把XUL理解成一种xml+xslt的机制,xml中可以定义一些基本元素,xslt中负责解释这些元素,并呈现在页面中,而安装了
Firefox后,将提供解释xml的机制,并定义了一些基本元素,如果按照html中的基本元素来理解,就可以很快上手,随着学习的进展,可以来验证上
述的理解,下面先看看他给我们定义了哪些基本元素(括号中为该元素所拥有的属性):
- label (id,value,control)
- button (id,class,label,image,disabled,accesskey)
- image (id,src)
- textbox (id,type,maxlength,multiline,value)
- checkbox (id,checked,label)
- radio (id,selected,label)
- radiogroup (group radios together)
- listbox -- listhead -- listcol -- listitem -- listcell
- menulist -- menugroup -- menuitem
- progressmeter (id,mode,value) ,进度条
- spacer (flex) ,占位符
- html:+html元素,例如:html:table html:tr,表示使用html元素
- vbox,hbox ,类似于html中table的功能,用于页面布局,排版
这里未完全列出元素和属性,具体可以参考教程,写的很详细,下面看一个例子,来理解一下这些元素的使用:
<?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<window id="findfile-window"
title="Find Files"
orient="horizontal"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<vbox flex="1">
<spacer style="height: 10px" flex="1"/>
<hbox>
<groupbox orient="horizontal" flex="1">
<caption label="Search Criteria"/>
<spacer style="width: 10px;"/>
<textbox id="find-text" flex="1" style="min-width: 15em;"/>
</groupbox>
</hbox>
<spacer style="height: 10px" flex="1"/>
<hbox>
<spacer flex="1"/>
<button id="find-button" label="Find"/>
<button id="cancel-button" label="Cancel"/>
</hbox>
<spacer style="height: 10px" flex="1"/>
</vbox>
</window>
另为.xul的文件后,用Firefox打开,可以看到如下效果:
4.脚本控制
XUL中的脚本是通过script元素包含进来的,一个XUL文件中可以包含多个script元素,其使用方法与DHtml中没啥两样,同样将Script使用到事件句柄后就可以了
<script src="findfile.js"/>
<script src="chrome://findfiles/content/help.js"/>
<script src="http://www.example.com/js/items.js"/>
<script>
function buttonPressed(event)
{
alert('Button was pressed!');
}
var button = document.getElementById("okbutton");
button.addEventListener('command', buttonPressed, true);
</script>
<button id="test" onclick="alert('haha')"></button>
学习到这里,感觉XUL相对于Html来说,提供了更为丰富的页面元素,使用类似于Html,但是更为强大。目前还不知道能否在IE中使用,也不清楚怎么应用到桌面程序中,希望通过继续的学习来得到答案。
分享到:
相关推荐
这篇学习笔记将带你走进Firefox插件(XUL)开发的世界,并对开发环境的搭建以及数据库的初步使用进行介绍。 首先,要开始Firefox插件开发,你需要搭建一个合适的开发环境。这通常包括安装Firefox开发者版浏览器,因为...
"Xul学习小程序"显然是一款基于XUL技术开发的音乐播放器,旨在帮助用户了解和学习XUL的相关知识。 在深入探讨XUL之前,我们首先要理解它是什么。XUL是XML的扩展,用于描述图形用户界面的布局和行为。它的设计目标是...
《XUL便签:记事本的创新实现》 在数字化时代,记事工具成为我们日常生活和工作中不可或缺的一部分。而“XUL便签(记事本)”正是一款以XUL技术为基础,专为用户打造的便捷记事应用。本文将深入探讨XUL便签的核心技术...
### XUL开发手册详解 #### 一、XUL概述与重要性 XUL(XML User Interface ...通过本手册的学习,开发者可以掌握XUL的基本概念和技术要点,为进一步开发复杂且功能丰富的Firefox扩展和桌面应用打下坚实的基础。
这个“xul调用c++xpcom例子.rar”包含了整个流程的源码和配置图示,对于学习和实践这一技术具有很高的参考价值。通过深入理解这一过程,开发者能够灵活地利用JavaScript和C++的优点,构建出高效且功能强大的应用程序...
**XUL程序员参考手册** XUL(XML User Interface Language)是一种标记语言,由Mozilla基金会开发,主要用于构建跨平台的用户界面。它结合了XML的结构化特性与HTML的易用性,使得开发者能够创建功能丰富的桌面应用...
XUL(XML User Interface Language)是一种基于XML的语言,主要用于构建跨平台的图形用户界面,尤其在Mozilla Firefox等浏览器的扩展开发中广泛应用。XUL文档的结构和HTML类似,但提供了更丰富的组件和定制性。以下...
XUL开发手册.pdf XUL(XML User Interface Language)是一种基于XML的用户界面语言,主要用于构建跨平台的桌面应用程序。XUL开发手册.pdf是Firefox浏览器的开发手册,提供了关于XUL的开发指南和技术信息。 从给定...
这个“xul小程序”是您学习XUL过程中积累的心得体会和相关资源集合。 1. **XUL基础**: XUL类似于HTML,但它使用XML语法来定义用户界面元素。这些元素包括按钮、文本框、菜单等,可以创建自定义的图形用户界面。...
《初识XUL用户界面UI开发》XUL是Mozilia社区开发技术中的一员,总要是为用户界面UI服务,Firefox就XUL以及其它一系列相关的基础库开发出来的成功之作。事实证明XUL是成功的UI开发技术,本文以一个最简明的视角来向看...
xul是XML User Interface language 的简写,是Mozilla基金会开发的一种基于XML的标记语言,一般用来构造程序的界面,典型的firefox就是这种的实践,目前XUL只能被Firefox的浏览器支持,它和js,css,html等理论上能够...
XUL(XML User Interface Language)是一种基于XML的用户界面描述语言,由Mozilla基金会开发,主要用于构建跨平台的桌面应用程序界面。XUL允许开发者使用XML来定义用户界面元素,并结合CSS来控制样式,JavaScript来...
通过学习和理解XUL,开发者可以创建自定义的浏览器扩展、独立应用或其他需要图形用户界面的项目。XUL的核心元素包括窗口、覆盖层、脚本、字符串资源、工具栏、菜单、快捷键和广播器等,这些元素共同构建了动态且可...
这些文件名中提到的`(最全)xulplanet-full.part*`可能是一个分卷压缩包,需要全部下载并解压才能获取完整的XUL学习资料。对于想要学习或提升XUL技能的开发者来说,这是一份非常宝贵的资源,涵盖了XUL的各个方面,从...
### XUL标签用法详解 #### 一、XUL文件结构与基本概念 XUL (XML User Interface Language) 是一种基于XML的语言,主要用于构建Mozilla应用的用户界面,如Firefox等浏览器插件。XUL文件的基本构成包括文件头、命名...
《XUL最全帮助资料》是针对Mozilla技术栈中的一项重要组成部分——XUL进行深入学习的资源集合。XUL(XML User Interface Language)是一种基于XML的用户界面语言,由Mozilla基金会开发,主要用于创建跨平台的图形...
开发firefox扩展时使用XUL文件的自动补齐acp文件,用于editplus。不知能否用于其他编辑器 对XUL reference中列出的标签都可进行自动补齐, 如box标签,使用自动补齐之后只需要输入box然后按空格键即可自动补齐为 ...
总结,这份学士论文全面地介绍了XPCOM和XUL在Mozilla应用开发中的作用,不仅讲解了理论知识,还提供了大量的代码示例,对学习Mozilla应用开发的读者来说是一份宝贵的资源。通过深入理解XPCOM和XUL,开发者可以更加...
ffjcext.xul