您现在的位置: 无忧电子商务网 >> 信息学院 >> 站长助手 >> 分析研究 >> 正文

利用Yahoo! UI库开发跨浏览器Web程序

作者:佚名    信息学院来源:整理    点击数:    更新时间:2008-1-8 我要参与讨论

 

  一、 简介

  最近发行的Yahoo! UI库提供了跨浏览器DHTML和AJAX能力(你可以在良好的BSD许可下使用)。遗憾的是,其参考文档极少,语法冗长,且其提供的功能不够完整。

  自从4.0浏览器发布以来,跨浏览器动态HTML库由于实践需要而得到增强。任何想使用最新和最伟大的HTML/Javascript功能而同时还想实现跨浏览器兼容性的开发者都有可能开发一种类似于库这样的软件来规范化各种争斗激烈且充满错误的各浏览器所提供的API。

  总体来看,Yahoo为开发者提供了一套体面的库以解决通用的跨浏览器问题;但遗憾的是,其作出的努力在某些方面还不如其它一些可用的开源API(例如DynAPI)所达到的效果。你可以下载免费的Yahoo! UI(YUI)库进行试验。

  二、 快速导航

  在下载完YUI并解压相应的.zip文件后,你会发现解压后的文件创建了八个文件夹,每一个文件夹都有相似的结构。每个文件夹包含若干子文件夹,但是最值得我们感兴趣的有:

  · build文件夹,其下的文件提供包含你需要使用的功能。

  · example文件夹,它提供了这些功能的实际使用。

  我不想再细及source目录-这些目录下包含一些.js文件,而且这些文件也以组合版本(combined versions)存在于build文件夹下。毫无疑问,这些文件是通过一个没有包含在该包中的工具创建的。

  总体来看,YUI基本上是一个功能库-你可以通过一组匿名方法和类似于命名空间的语法进行存取。例如,如果你想设置页面中一个元素的X/Y位置,那么不是建立类似于SetLayerLoc('MyID',10,10)这样的代码,你只需要作如下的库调用即可:

YAHOO.util.Dom.setXY('MyID',new Array(10,10));

  尽管YUI实现了这一目的,但是语法却相当冗长。

  其文档中包含一些类似于Javadoc API参考的信息-它是从一些自动化工具自动生成的,其中没有进行细致的"清理"工作,而且在生成的类中也没有提供详细的帮助性说明。然而,YUI的确提供了一组完整的示例-其中牵涉到大多数常用函数-以一种合理的直接的方式,但是没有链接到生成文档的其它部分。

  三、 DOM和事件库

  YUI提供的与核心DOM和事件处理相关的能力出人意料地"坚固"并实现了既定功能,并且涉及到大范围的功能。最令人惊讶的是,这种API使得你能够实现简单的跨浏览器透明控制。大多数开发者甚至还不知道-YUI还)支持(经由DirectX调用在IE中实现半透明技术,尽管效果上尚不及其基于Mozilla的等价物,但是YUI已经支持存取绝大多数(如果不是全部)CSS属性。下面是一个例子:

YAHOO.util.Dom.setStyle('MyDivID','opacity',.5);

  这么多精彩的功能居然在文档中提及很少。文档中暗示,你可以使用它们的JavaScript等价名字来设置所有元素的CSS风格属性,例如,通过编写backgroundColor而不是使用其CSS对应物background-color,但缺点是,它缺乏支持属性的一个完整列表。

  当你注意到YUI提供了一种令人惊异的跨浏览器功能以支持透明功能之时,你可能想:或许该库也实现了跨浏览器支持以免用户不得不记忆每一种相应于非标准的CSS属性的CSS增强功能。但遗憾的是,情况并非如

[1] [2] 下一页

在google里搜索更多利用Yahoo! UI库开发跨浏览器Web程序

Google
Web www.51ec.org
【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
我来说两句 对此文章发表了评论
  昵 称: *必填    ·注册用户·
  评 分: 1分 2分 3分 4分 5分     严禁发表危害国家安全、政治、黄色淫秽等内容的评论,用户需对自己在使用本网站服务过程中的行为承担法律责任。本站管理员有权保留或删除评论内容,评论内容只代表机友个人观点,与本网站立场无关。  
评 论
内 容

 
评论列表 (最新 评论仅限网友观点!)

热门文章
  • 此栏目下没有热点信息学院
  • 供求信息




    | 设为首页 | 加入收藏 | 关于我们 | 广告服务 | 联系方式 | 友情链接 | 版权申明