Log4Classicning

好读书 不求甚解 每有会意 便欣然忘食

XML Binding Language
2008年8月26日

前端的复用一直是一个美好的理想,以dojo为例dojo.dijit包中包含了一组易于复用的组件。这种复用是通过JavaScript建立dom,在网页中通过dojo自己规定的属性标记(dojoType)进行引用的。在Jazz平台上,这种方式有一定的加强,dom可以写成html的形式,与行为分离。

除了dojo的实现方式以外,W3C已经有了一套用于网页组件复用的标准,即XML Binding Language(XBL)。XBL通过一个独立的XML文件,定义组件的DOM片段、Stylesheet的路径、组件的属性、组件数据的getter和setter、对外暴露的方法以及事件响应的handler。而页面要使用该组件需要在style中使用-moz-binding: url()来指定XML文件的路径和binding的id(一个XML中可以定义多个binding)。

如此一来,页面载入时就可以加载XML中定义的DOM片段,实现复用。

一个具体的例子可以参考Moziila网站:
http://developer.mozilla.org/en/XBL/XBL_1.0_Reference/Example_Sticky_Notes

然而XBL目前还没有广泛应用的基础,目前只有Mozilla的浏览器支持了这个标准。据说IE上有与之功能类似的实现,但是与XBL还是有明显的不同。所以眼下要推广这种纯粹前端的复用技术,目前来说还是非常困难的。

« 在cygwin上安装运行JWMW3C's Geolocation API »
  • quote 1.alex
  • 不看好这个技术
    1 似乎不易于整合进现有网页制作流程
    2 现有的ajah或jsdom可以完成近似的工作
    3 不直观,没有好的ide支持下,似乎比不复用情况下更难用
    4 用户对界面的某些需要变化,比如改变x的值的表现方式由菜单改为列表再改为树状列表,这种方式没有jsdom的方式易于操纵
  • 2008-8-27 20:23:14 回复该留言
  • quote 2.Classicning
  • http://www.classicning.com
  • 我很期待这个技术的普及

    目前的复用以类似dojo widget的方式、jsp tag/jsf的方式,都是开发者可控制的能力非常低,而这个内容、样式、行为都分得清清楚楚,开发者自定义的空间非常大。

    复用嘛,很难应对用户变来变去的需求,其实这也要求组件的flexibility更强
  • 2008-8-27 21:40:55 回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Search

站点统计

  • 文章总数:745
  • 评论总数:2630
  • 引用总数:4
  • 浏览总数:5693
  • 留言总数:42
  • 当前主题:ClassicningDailyLog Style
  • 当前样式:footoo

网站收藏

图标汇集

  • Creative Commons License
  • Widgetize!
  • visitor stats

Powered By Z-Blog 1.8 Spirit Build 80722

2004 - 2007 Classicning.com. 苏ICP备06039259号.