Enviar búsqueda
Cargar
YUI介绍和使用YUI构建web应用
•
Descargar como PPTX, PDF
•
0 recomendaciones
•
1,051 vistas
Adam Lu
Seguir
Denunciar
Compartir
Denunciar
Compartir
1 de 32
Descargar ahora
Recomendados
Dive into kissy
Dive into kissy
jay li
JQuery 学习
JQuery 学习
cssrain
Banquet 52
Banquet 52
Koubei UED
Vue.js
Vue.js
ZongYing Lyu
從改寫後台 jQuery 開始的 Vue.js 宣告式渲染
從改寫後台 jQuery 開始的 Vue.js 宣告式渲染
Sheng-Han Su
一拍一产品背后的故事(React实战)
一拍一产品背后的故事(React实战)
Kejun Zhang
Kissy design
Kissy design
yiming he
Kissy简介
Kissy简介
jay li
Recomendados
Dive into kissy
Dive into kissy
jay li
JQuery 学习
JQuery 学习
cssrain
Banquet 52
Banquet 52
Koubei UED
Vue.js
Vue.js
ZongYing Lyu
從改寫後台 jQuery 開始的 Vue.js 宣告式渲染
從改寫後台 jQuery 開始的 Vue.js 宣告式渲染
Sheng-Han Su
一拍一产品背后的故事(React实战)
一拍一产品背后的故事(React实战)
Kejun Zhang
Kissy design
Kissy design
yiming he
Kissy简介
Kissy简介
jay li
前端开发之Js
前端开发之Js
fangdeng
I os 09
I os 09
信嘉 陳
Simple kissy1.3
Simple kissy1.3
yiming he
Yui rocks
Yui rocks
Adam Lu
KISSY Mechanism
KISSY Mechanism
lifesinger
I os 14
I os 14
信嘉 陳
YUIconf2010介绍
YUIconf2010介绍
ling yu
用Jquery实现拖拽层
用Jquery实现拖拽层
yiditushe
YUI 3 菜鳥救星
YUI 3 菜鳥救星
Ying-Hsiang Liao
前端杂乱分享
前端杂乱分享
shyboyzk
Yui3简介
Yui3简介
jay li
Yui3 初探
Yui3 初探
isnull
YUI 教學 - 前端工程開發實務訓練
YUI 教學 - 前端工程開發實務訓練
Joseph Chiang
JavaScript Code Quality
JavaScript Code Quality
Joseph Chiang
Kissy模块化实践
Kissy模块化实践
yiming he
Yui3入门
Yui3入门
cly84920
KISSY for starter
KISSY for starter
yiming he
Script with engine
Script with engine
Webrebuild
Mvc
Mvc
tbmallf2e
Node js实践
Node js实践
myzykj
I os 07
I os 07
信嘉 陳
HTML5概览
HTML5概览
Adam Lu
Más contenido relacionado
La actualidad más candente
前端开发之Js
前端开发之Js
fangdeng
I os 09
I os 09
信嘉 陳
Simple kissy1.3
Simple kissy1.3
yiming he
Yui rocks
Yui rocks
Adam Lu
KISSY Mechanism
KISSY Mechanism
lifesinger
I os 14
I os 14
信嘉 陳
YUIconf2010介绍
YUIconf2010介绍
ling yu
用Jquery实现拖拽层
用Jquery实现拖拽层
yiditushe
La actualidad más candente
(8)
前端开发之Js
前端开发之Js
I os 09
I os 09
Simple kissy1.3
Simple kissy1.3
Yui rocks
Yui rocks
KISSY Mechanism
KISSY Mechanism
I os 14
I os 14
YUIconf2010介绍
YUIconf2010介绍
用Jquery实现拖拽层
用Jquery实现拖拽层
Similar a YUI介绍和使用YUI构建web应用
YUI 3 菜鳥救星
YUI 3 菜鳥救星
Ying-Hsiang Liao
前端杂乱分享
前端杂乱分享
shyboyzk
Yui3简介
Yui3简介
jay li
Yui3 初探
Yui3 初探
isnull
YUI 教學 - 前端工程開發實務訓練
YUI 教學 - 前端工程開發實務訓練
Joseph Chiang
JavaScript Code Quality
JavaScript Code Quality
Joseph Chiang
Kissy模块化实践
Kissy模块化实践
yiming he
Yui3入门
Yui3入门
cly84920
KISSY for starter
KISSY for starter
yiming he
Script with engine
Script with engine
Webrebuild
Mvc
Mvc
tbmallf2e
Node js实践
Node js实践
myzykj
I os 07
I os 07
信嘉 陳
HTML5概览
HTML5概览
Adam Lu
前端MVC之backbone
前端MVC之backbone
Jerry Xie
Node getting-started
Node getting-started
lylijincheng
Javascript autoload
Javascript autoload
jay li
Android 智慧型手機程式設計
Android 智慧型手機程式設計
Kyle Lin
Uliweb cheat sheet_0.1
Uliweb cheat sheet_0.1
modou li
J engine -构建高性能、可监控的前端应用框架
J engine -构建高性能、可监控的前端应用框架
fangdeng
Similar a YUI介绍和使用YUI构建web应用
(20)
YUI 3 菜鳥救星
YUI 3 菜鳥救星
前端杂乱分享
前端杂乱分享
Yui3简介
Yui3简介
Yui3 初探
Yui3 初探
YUI 教學 - 前端工程開發實務訓練
YUI 教學 - 前端工程開發實務訓練
JavaScript Code Quality
JavaScript Code Quality
Kissy模块化实践
Kissy模块化实践
Yui3入门
Yui3入门
KISSY for starter
KISSY for starter
Script with engine
Script with engine
Mvc
Mvc
Node js实践
Node js实践
I os 07
I os 07
HTML5概览
HTML5概览
前端MVC之backbone
前端MVC之backbone
Node getting-started
Node getting-started
Javascript autoload
Javascript autoload
Android 智慧型手機程式設計
Android 智慧型手機程式設計
Uliweb cheat sheet_0.1
Uliweb cheat sheet_0.1
J engine -构建高性能、可监控的前端应用框架
J engine -构建高性能、可监控的前端应用框架
Más de Adam Lu
一步一步开发Html5 mobile apps
一步一步开发Html5 mobile apps
Adam Lu
Get started with YUI
Get started with YUI
Adam Lu
HTML5 on Mobile
HTML5 on Mobile
Adam Lu
Html5 on Mobile(For Developer)
Html5 on Mobile(For Developer)
Adam Lu
HTML5 on Mobile(For Designer)
HTML5 on Mobile(For Designer)
Adam Lu
重新认识Html5
重新认识Html5
Adam Lu
常用Js框架比较
常用Js框架比较
Adam Lu
浏览器兼容性问题小结
浏览器兼容性问题小结
Adam Lu
小谈Javascript设计模式
小谈Javascript设计模式
Adam Lu
从Adobe和qcof会议看前端开发
从Adobe和qcof会议看前端开发
Adam Lu
揭秘Html5和Css3
揭秘Html5和Css3
Adam Lu
Enhance Web Performance
Enhance Web Performance
Adam Lu
Más de Adam Lu
(12)
一步一步开发Html5 mobile apps
一步一步开发Html5 mobile apps
Get started with YUI
Get started with YUI
HTML5 on Mobile
HTML5 on Mobile
Html5 on Mobile(For Developer)
Html5 on Mobile(For Developer)
HTML5 on Mobile(For Designer)
HTML5 on Mobile(For Designer)
重新认识Html5
重新认识Html5
常用Js框架比较
常用Js框架比较
浏览器兼容性问题小结
浏览器兼容性问题小结
小谈Javascript设计模式
小谈Javascript设计模式
从Adobe和qcof会议看前端开发
从Adobe和qcof会议看前端开发
揭秘Html5和Css3
揭秘Html5和Css3
Enhance Web Performance
Enhance Web Performance
YUI介绍和使用YUI构建web应用
1.
YUI介绍和使用YUI构建Web应
用 鲁超伍 http://adamlu.com @adamlu
2.
YUI是什么? http://yuilibrary.com/
3.
YUI项目 •
JavaScript库(YUI) • CSS基础(Grid) • 文档工具(yuidoc) • 构建工具(shifter) • 测试工具(yuitest) • 性能优化工具(yui compressor) • 开发者培训(Theater/Blog)
4.
https://github.com/yui/yui3
5.
模块加载 • 种子文件 –
<script src="http://yui.yahooapis.com/3.5.0/build/yui/yui- min.js"></script> • 种子小,作用大 – 模块注册系统 – 核心YUI工具方法 – Lang, Object, Array类 – Loader(动态模块加载)
6.
模块注册 YUI.add('hello', function (Y)
{ Y.namespace('Hello'); Y.Hello.sayHello = function () { return 'GREETINGS PROGRAMS'; }; });
7.
模块使用 YUI().use('node-base', 'hello', function
(Y) { Y.one('#demo').setHTML(Y.Hello.sayHello() ); });
8.
有用的工具函数 •
Y.merge • Y.mix • Y.later • Y.log • Y.Lang • Y.Array • Y.Object • Y.UA http://jsfiddle.net/adamlu/LEEdc/
9.
一个简单的YUI程序 <script src="http://yui.yahooapis.com/3.9.0/build/yui/yui-min.js"></script> <div id="test"></div> <button
id="button">Turn Red</button> #test { height: 30px; background: gray; } #test.red { background: red; http://jsfiddle.net/adamlu/YdBbL/ } YUI().use('node', function(Y){ Y.one('#button').on('click', function() { Y.one('#test').addClass('red'); }); });
10.
YUI vs. jQuery http://www.jsrosettastone.com/
11.
YUI让你把JavaScript写得更好 $.each([1, 2, 3],
fn(index, value)) $.each({ key: value }, fn(key, value)) Y.Array.each([1, 2, 3], fn(value, index)) Y.Object.each({ key: value }, fn(value, key)) $.isPlainObject(obj) Y.Lang.isObject(obj) $(':radio') Y.all('input[type=radio]') 还有强大的面向对象编程支持
12.
使用组件 • YUI本身已经自带很多丰富组件如
AutoComplete, Calendar, DataTable等 YUI基础结构
13.
基于Base创建组件 • Base是底层的基础类,同时具备Attribute和
Event特性 • 提供了创建基于属性对象的标准模板 • 提供了一致的init()和destroy()方法 http://jsfiddle.net/adamlu/7hXCV/
14.
Attribute类 • 对一些状态值和自定义逻辑功能相关配置
的封装 • 提供监听状态改变的机会 • Gettters • Settters • 默认值 • Change事件
15.
YUI().use("attribute", function(Y) {
//实例化时设置属性的初始值 obj = new MyClass({name: value}); function MyClass() { obj.addAttr(name, value); } obj.set(name, value); MyClass.ATTRS = {}; obj.get(name); Y.augment(MyClass, Y.Attribute); obj.on(nameChanged, callback); }); obj.after(nameChanged, callback);
16.
Attribute设置流程
17.
YUI提供的事件 • DOM事件,让你的程序响应用户操作。 • 特别的DOM事件,当页面加载或渲染时可
以让你订阅有趣的瞬间。 • 合成事件,让你定义全新的DOM事件,扩 大了用户和你的程序沟通的渠道。 • 自定义事件,通过发出和订阅程序指定的 消息让组件之间互相通信。
18.
事件支持 •
控制事件传播和冒泡 • 阻止默认行为 • 委托事件 • EventTarget – publish() – on()/detach() – fire() – addTarget()/removeTarget() http://jsfiddle.net/adamlu/5C5CC/
19.
组件 • 组件(widget)是一个通用的可视元件设计在
不同网站被重用,如表格、日历、菜单或 图表。
20.
扩展组件 • 生命周期方法:initializer(), destructor(),
renderUI(), bindUI(), syncUI() Y.Electron = Y.Base.create('electron', Y.Widget, [], { destructor: function () { }, renderUI: function () {}, bindUI: function () {}, syncUI: function () {} }, { ATTRS: {} }); }, '1.1', {requires: ['base-build', 'widget']}); http://jsfiddle.net/adamlu/AQ8mg/
21.
YUI on Mobile •
Touch事件支持 • Guesture • History • Transition • ScrollView – 水平/垂直/拖动刷新/分页/滚动条 YUI().use('scrollview', function (Y) { var scrollView = new Y.ScrollView({ srcNode: '#someContainer' }); scrollView.render(); }); http://yuilibrary.com/yui/docs/scrollview/scrollview-base-example.html
22.
YUI App Framework •
由App, Model, Model List, Router和View组成 的包 • 写单页面JavaScript应用程序的MVC风格的 框架 • 基于URL的路由 • 类似BackboneJs框架
23.
使用App Framework的例子
http://adamlu.com/fe/ContactApp/ https://github.com/adamlu/YUIAppDemo
24.
HTML页面
25.
main.js
26.
Y.App
27.
ContactModel
28.
ContactListModel
29.
ContactView
30.
ContactListView
31.
YUI Cookbook
32.
@adamlu THANKS!
Descargar ahora