YUI 3到YUI 2开始学习有何不同?

时间:2011-01-17 17:28:54

标签: yui

在过去的两年里,我一直在使用jQuery和ExtJs进行广泛的编程。我想现在是时候花些时间学习令人印象深刻的YUI库。

从头开始学习什么是明智的? 我不打算在我未来的任何项目中使用YUI 2我将只使用YUI 3.在YUI 2和YUI 3的引用代码中是否存在任何范式转换?或者只是关于一些化妆品变化?

6 个答案:

答案 0 :(得分:11)

YUI2和YUI3真的非常不同。与普通的javascript和jQuery不同。

以下是将给定类的所有元素的背景颜色设置为红色以说明差异的示例。

首先在YUI2中:

<script src="http://yui.yahooapis.com/2.8.2r1/build/yahoo/yahoo-min.js"></script>
<script src="http://yui.yahooapis.com/2.8.2r1/build/dom/dom-min.js"></script>
<script>
  var YDom = YAHOO.util.Dom;

  YDom.setStyle(YDom.getElementsByClassName('test'),'background-color','red');

</script>

现在在YUI3:

<script src="http://yui.yahooapis.com/3.3.0/build/yui/yui-min.js"></script>
<script>
  YUI().use('node',function(Y){

    Y.all('.test').setStyle('background-color','red');

  });
</script>

注意主要区别:

  • 在YUI2中,您使用<script>标记自行包含所需的模块。在YUI3中,您只包含一个带有<script>标记的脚本文件,并使用YUI().use加载所有其余文件。在上面的示例中,我们使用YUI3中的node模块。 YUI2确实有一个可以进行自动加载的模块,但它本身是一个独立的模块,并不是内置于YAHOO全局对象的。

  • YUI2是传统的命令式编程:foo(bar())而YUI3使用链接。

  • YUI3强制您在函数内编写所有与YUI相关的代码,因此在其自己的作用域中运行,并且只将YUI对象公开给全局作用域。这基本上是其他图书馆的忍者模式。

答案 1 :(得分:4)

了解YUI 3,它是图书馆的未来。从YUI 2开始,它在可用性和灵活性方面也是一个巨大的飞跃。在这一点上学习YUI 2,除非你真的不得不浪费时间。

答案 2 :(得分:3)

是的,绝对是YUI3 ......与YUI2相比,它具有很好的性能增强。

既然你提到你已经广泛使用jQuery,这个链接可能会帮助你更快地获取YUI3 ----列出最常用的YUI3等效的jQuery模块

http://www.jsrosettastone.com/

希望有所帮助..

答案 3 :(得分:3)

对于那些涌向此页面寻找答案的人,以下是来自YUI博客的一系列视频,以便开始使用YUI3。

  • Eric Miraglia’s Welcome to YUI 3
  • 此处有更多视频 - http://www.yuiblog.com/blog/2010/10/27/jquery-and-yui-3-a-tale-of-two-javascript-libraries/

    答案 4 :(得分:1)

    您可以在http://yuilibrary.com/

    找到有关YUI3库的更多文档

    答案 5 :(得分:0)

    YUI是一个免费的开源JavaScript和CSS库,用于构建丰富的交互式Web应用程序。

    YUI是一个JavaScript实用程序和控件库,用于使用DOM Scripting,DHTML和Ajax等技术构建丰富的交互式Web应用程序。

    1. 快速
    2. 模块化架构/依赖关系管理
    3. 组件基础结构
    4. 活动系统
    5. DOM交互,Ajax,许多小部件
    6. 精彩文档
    7. YUI App Framework

      • 是开源的
      • 由Yahoo和YUI社区开发
      • 基于YUI3
      • 受Backbone.js启发
      • 为您提供前端重型Web应用程序的基本结构

      More About YUI