- 浏览: 145234 次
- 性别:
- 来自: 大连
最新评论
-
houfeng0923:
zensh 写道这种Promise用起来还是复杂了点,需要大量 ...
使用jQuery Deferred 和 Promise 创建响应式应用程序 -
zensh:
这种Promise用起来还是复杂了点,需要大量处理异步任务的同 ...
使用jQuery Deferred 和 Promise 创建响应式应用程序 -
Troland:
houfeng0923 写道Troland 写道
functi ...
JavaScript设计模式摘要(一) -
houfeng0923:
Troland 写道
function extend(subc ...
JavaScript设计模式摘要(一) -
Troland:
function extend(subclass,super ...
JavaScript设计模式摘要(一)
文章列表
转自:http://blog.csdn.net/wind_zsu/article/details/2464049
我们在HTML里面声明DOCTYPE一般会有以下几种:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!DOCTYP ...
Widget部件类是YUI3所有部件的基础类。它在Base的基础上提供了以下几个核心的基础功能:
1,在Base的init和destroy时刻,添加render生命周期管理。
2,抽象的渲染相关方法,促进一致的MVC模式访问。
3,统一的部件属性设置方法 ...
插件可以让你无侵入地为衍生自Base类的宿主对象(称为host的对象)添加对象。如Node、Widget等类的对象实例。
可以通过继承Plugin.Base类来创建插件类。除此之外还可以通过后面的其他方法创建插件。
在Base类中已经介绍可以通过插件向组件实例添加功能,组件类甚至可以对插件功能一无所知。这样我们就可以在组件实例级别使用这些功能,
从而避免了为了添加这些功能而把组件类构造得很大或者构建多个不同的组件类。
1创建简单插件
对于简单的插件,如果不需要定义自己的事件和属性、不需要监听宿主的事件来改变宿主的行为、不需要重写宿主的方法的话,插件类可以只是简单的J ...
Base组件
Base被设计为那些衍生自Attribute和EventTarget的类的底层基础类。
为创建基于Attribute的对象提供标准模板,也为类的层次提供了一致的init()和destory()方法序列来串联初始化(initializer)和销毁(destructor)方法。
Base同时也通过plugins或extensions机制为类提供了代码重用的方法。
对应模块‘base‘, Base uses Attribute,Plugin.Host
使用Base的功能
1,扩展Base
Base作为实现了Attribute及EventTarget功能的基类,具有了A ...
-----------------------------------------第一部分 面向对象的JavaScript----------------------------------------------
-----------------------------------------第一章:富有表现力的JavaScript-----------------------------------------------
JavaScript强大的表现力赋予程序员在运用设计模式编写代码时极大的创造性。在JavaScript中使用模式主要有如下原因:
1,可维护 ...
zYUI3 Node对象实现链式调用的方式如下:
Y.one('#id').setStyle('border','1px').setAttribute('title','test');
大家都知道,JavaScript链式调用只是语法的招数。依据JavaScript的灵活性,实现的方法也不止一种,一起来看。
注:前两种实现我直接拷贝了 zhouyrt的文章 JavaScript中链式调用之研习 中的代码,在此谢过。
第一种链式调用方法,代码如下。缺点是每个需要链式调用的方法都要返回当前对象。
function ClassA(){
this.prop1 = ...
1,YUI3组件框架
组件框架基于YUI Core,是建立和扩展组件的基础;组件框架从下而上依次基于attribute、base、widget 模块组成,同时基于plugin模块实现灵活扩展。
相关类说明:
Attribute类 提供属性管理,可以扩展任何类使之具 ...
YUI Event 组件 通过提供简单的Dom事件响应接口为开发事件驱动的应用提供了便利。该组件同时也包含自定义事件支持,自定义事件允许你在程序中发布事件,其他的组件可以订阅这些事件做出响应。
以下分步介绍YUI事件系统的相关功能。
基本DOM事件
Y.on()注册事件
使用基本Event组件的方法,需要引入'event'模块;在Node模块介绍中提到过如何为Node注册Dom事件的方法。
YUI().use('node',function(Y){
Y.on('click',function(e){
alert('id==foo's dom is cl ...
一、 Yahoo的军规条例:
谨记:80%-90%的终端响应时间是花费在下载页面中的图片,样式表,脚本,flash等;详细的解释来这里查:http://developer.yahoo.com/performance/rules.html也可以直接firebug上一项项比对,如下图:
简单翻译解释下:
作者: 阮一峰 日期:
YUI3 ‘node’ 模块为创建、操作和获取DOM节点对象(集合)提供了丰富的方法。该模块包含两个主要的对象 Node和NodeList。每一个Node实例表示一个底层的DOM节点;每一个NodeList实例表示一组DOM节点集合。相比YUI2,YUI3 的 Node在模块组织和方法上有了很大的精简,但同样提供丰富的功能;下面简单介绍下node模块Node和NodeList的主要方法和使用。完整功能列表可参考官方API文档。
YUI3 Node API是基于标准的DOM API的,它提供一些便捷的属性和方法使常用的DOM操作变得更简单,实现代码也更简洁。熟悉标准的DOM A ...
首先 面向对象特性 :封装继承多态,满足部分特性的语言称为“基于对象语言”。
这些统称为‘对象系统’,‘对象系统’的继承特性三种实现方案: 基于类 基于原型 基于元类。
在javascript中采用基于‘构造器’机制来实现类的一些功能。
javascript的优点也是它的缺点,对于大型对象系统,对 对象的封装和多态支持不够,对于小型系统,又由于‘动态,函数式,原型继承’的灵活性而带来混杂。
javascript的原型继承依赖 关联数组 和 函数式语言 两方面特性;另外原型重写与原型链维护还涉及到动态语言特性。
所以 ,尽管 原型 是一种简义的单的对象系统实现 ...
前一篇 YUI3学习(二)--YUI Global Object
在前篇YUI3 Global Object中介绍了oop模块中的的两个继承相关的方法 extend 和augment。
本篇介绍下YUI3 oop模块剩余的几个方法。
Y.aggregate(r,s,ov.wl)
同样的基于Y.mix的属性合并方法;需要 区别Y.aggregate与Y.merge
API说明如下:
object aggregate ( r , s , ov , wl )
Applies object properties from the supplier to the rec ...
前一篇 YUI3入门
YUI3 Global Object http://developer.yahoo.com/yui/3/yui/
首先需要了解在YUI3 api文档模块列表的yui模块:
YUI模块是YUI3.x实现的单个核心依赖。在使用YUI的页面中都必须包括YUI,这是唯一的依赖文件。YUI模块包含模块加载功能和模块依赖计算功能,YUI模块作为具体实现的一个种子,你只需要提供需要的模块列表及基于这些模块实现的代码;通过配置YUI的加载方式,YUI3可以在加载时通过一个优化的HTTP请求获取所有所需的模块文件;此外,YUI模块在自定义组件加载script和css时作为组件 ...
学习YUI3有一段时间,并且应用在了一些项目的前端开发中,感觉还是蛮不错的,所以决定开始记录下YUI3的学习历程和个人经验。 YUI3在前身YUI2基础上进行了大量的重新设计,并不只是简单的版本升级。YUI3强调代码重用,将功能做了级别划分和颗粒化的设计。在概念上抽象出 核心、工具、和组件类,分别放在不同的目录结构中,需要的时候自行去引用。为动态加载的框架设计做铺垫。YUI 3重点是代码的组织和结构。以下是结构图。
YUI3在结构上分为四大类:
种子:该模块是YUI3的单一核心,页面都必须包含该模块,该模块提供加载功能,所以可以堪称是YUI的一个种子。在YUI3 ...