- 浏览: 186672 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
di1984HIT:
记录一下。嘿嘿
eclipse中关闭js报错的方法 -
di1984HIT:
谢谢,学习了
jdk输出带缩进格式xml的方法 -
雪狐狼:
为何,每次查询需要 构建datatable?
YUI DataTable 服务器端翻页与排序 -
lijunwyf41:
nd:"nd", // 表示已经发送请求的 ...
jqGrid <-- json --> spring,hibernate之服务器端分页,排序 -
yiyu:
最近不看YUI了,发现一个国产的前端框架,是金蝶出的,叫Ope ...
YUI 3 学习笔记(5)- Attribute类
Node是用来操作DOM node的工具,实际上每一个Node实例都代表着一个DOM node,每一
个NodeList都代表着一组DOM node.
从YUI2.x到YUI3.0相关的api发生了一些变化,具体可以参见本文的最后部分。
1. 要使用Node,首先要引入YUI3的种子文件:
然后加载相应模块:
2. 获得Node
可以使用YUI.one()获取Node,该方法的参数可以是一个Node,也可以是一个选择器(selector),
在使用选择器时,返回第一个匹配的元素。默认情况下css3选择器不被支持,如果要使用,需要
加载“selector-css3”模块。关于css3 selector可以参见这里:
http://www.w3.org/TR/css3-selectors
以下是使用YUI.one()的例子:
3. 访问Node属性
可以使用Node的set,get方法访问Node的属性,需要注意的是如果返回节点的话返回的是
YUI Node而不是DOM node,这一点在其他地方也要注意。
以下是相关的例子:
4. 事件监听
可以用on方法添加事件监听器:
5. DOM方法
Y.Node提供了所有DOM node的原有方法
6. NodeList的使用
NodeList提供了与Node相似的API,但是它的处理时对所有NodeList中的所有Node作用的。
例如如下代码对demo的所有子元素添加'bar'类:
7. 查找
Node提供one,all,test方法分别实现查找第一个匹配元素,查找所有匹配元素,测试
是否存在匹配元素的功能
8. YUI 2.x和YUI 3.x的对应表
YUI2.x的Node功能是由YAHOO.util.Dom提供的,其与YUI3.0的对应关系如下:
个NodeList都代表着一组DOM node.
从YUI2.x到YUI3.0相关的api发生了一些变化,具体可以参见本文的最后部分。
1. 要使用Node,首先要引入YUI3的种子文件:
<script src="http://yui.yahooapis.com/3.0.0/build/yui/yui-min.js"></script>
然后加载相应模块:
YUI().use('node', function(Y) { });
2. 获得Node
可以使用YUI.one()获取Node,该方法的参数可以是一个Node,也可以是一个选择器(selector),
在使用选择器时,返回第一个匹配的元素。默认情况下css3选择器不被支持,如果要使用,需要
加载“selector-css3”模块。关于css3 selector可以参见这里:
http://www.w3.org/TR/css3-selectors
以下是使用YUI.one()的例子:
YUI().use('node', function(Y) { var node1 = Y.one('#main'); var node2 = Y.one(document.body); });
3. 访问Node属性
可以使用Node的set,get方法访问Node的属性,需要注意的是如果返回节点的话返回的是
YUI Node而不是DOM node,这一点在其他地方也要注意。
以下是相关的例子:
YUI().use('node', function(Y) { var node = Y.one('#foo'); var parent = node.get('parentNode'); // Node instance var html = 'I am "' + node.get('id') + '".'; html += 'My parent is "' + parent.get('id') + '"'; node.set('innerHTML', html); });
4. 事件监听
可以用on方法添加事件监听器:
YUI().use('node', function(Y) { Y.one('#demo').on('click', function(e) { e.preventDefault(); alert('event: ' + e.type + ' target: ' + e.target.get('tagName')); }); });
5. DOM方法
Y.Node提供了所有DOM node的原有方法
6. NodeList的使用
NodeList提供了与Node相似的API,但是它的处理时对所有NodeList中的所有Node作用的。
例如如下代码对demo的所有子元素添加'bar'类:
YUI().use('node', function(Y) { Y.one('#demo').get('children').addClass('bar'); });
7. 查找
Node提供one,all,test方法分别实现查找第一个匹配元素,查找所有匹配元素,测试
是否存在匹配元素的功能
8. YUI 2.x和YUI 3.x的对应表
YUI2.x的Node功能是由YAHOO.util.Dom提供的,其与YUI3.0的对应关系如下:
2.x (via YAHOO.util.Dom) | 3.0 |
addClass | myNode.addClass |
batch | NodeList[methodName], NodeList.each, or Y.each |
generateId | Y.guid |
get | Y.one |
getAncestorBy | myNode.ancestor |
getAncestorByClassName | myNode.ancestor |
getAncestorByTagName | myNode.ancestor |
getChildren | myNode.get('children') |
getChildrenBy | myNode.all |
getClientRegion | myNode.get('viewportRegion') |
getDocumentHeight | myNode.get('docHeight') |
getDocumentScrollLeft | myNode.get('docScrollX') |
getDocumentScrollTop | myNode.get('docscrollY') |
getDocumentWidth | myNode.get('docWidth') |
getElementsBy | myNode.all |
getElementsByClassName | myNode.all |
getFirstChild | myNode.one |
getFirstChildBy | myNode.one |
getLastChild | myNode.one |
getLastChildBy | myNode.one |
getNextSibling | myNode.next |
getNextSiblingBy | myNode.next |
getPreviousSibling | myNode.previous |
getPreviousSiblingBy | myNode.previous |
getRegion | myNode.get('region') |
getStyle | myNode.getStyle |
getViewportHeight | myNode.get('winHeight') |
getViewportWidth | myNode.get('winWidth') |
getX | myNode.getXY |
getY | myNode.getXY |
getXY | myNode.getXY |
hasClass | myNode.hasClass |
inDocument | myNode.inDoc |
insertAfter | myNode.insert |
insertBefore | myNode.insert |
isAncestor | myNode.contains (Note myNode.contains(myNode) === true) |
removeClass | myNode.removeClass |
replaceClass | myNode.replaceClass |
setStyle | myNode.setStyle |
setX | myNode.setXY |
setY | myNode.setXY |
setXY | myNode.setXY |
评论
5 楼
lclcr
2011-02-11
yiyu,谢谢。
在IE下没问题,在FF下如果将HTML文件和yui-min.js文件放在服务器下就没有问题,看来其相对路径FF不知道如何打开。
在IE下没问题,在FF下如果将HTML文件和yui-min.js文件放在服务器下就没有问题,看来其相对路径FF不知道如何打开。
4 楼
yiyu
2011-02-10
yui-min.js的路径对吗?
在firefox里看看yui代码加载进来了吗?
在firefox里看看yui代码加载进来了吗?
3 楼
lclcr
2011-02-10
<html>
<head>
<title>测试YUI</title>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
<script type="text/javascript" src="yui-min.js"></script>
<script type="text/javascript">
alert("begin");
YUI().use('node', function(Y) {
var node1 = Y.one('#id_but');
alert(node1);
});
alert("end");
</script>
</head>
<body>
<input type="button" nam="n_but" id="id_but" value="click"/>
<input type="button" nam="s_but" id="id_sbut" value="stop"/>
<br/>
</body>
</html>
我的YUI部分根本就没有执行,请问是什么原因呢?
<head>
<title>测试YUI</title>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
<script type="text/javascript" src="yui-min.js"></script>
<script type="text/javascript">
alert("begin");
YUI().use('node', function(Y) {
var node1 = Y.one('#id_but');
alert(node1);
});
alert("end");
</script>
</head>
<body>
<input type="button" nam="n_but" id="id_but" value="click"/>
<input type="button" nam="s_but" id="id_sbut" value="stop"/>
<br/>
</body>
</html>
我的YUI部分根本就没有执行,请问是什么原因呢?
2 楼
tyc1920
2010-11-26
YUI有哪些优点啊,跟JQuery相比有哪些区别?
1 楼
200830740306
2010-03-06
学习了
发表评论
-
使用fuelux tree
2016-04-19 21:06 2701bootstrap这么火,就是fuelux又是同一家推 ... -
eclipse中关闭js报错的方法
2013-05-18 12:35 1553eclipse中引入yui报错,关闭validation后不 ... -
YUI:带checkbox的TreeView的赋值与读值
2010-09-10 16:08 2174日前做一个用户权限管 ... -
YUI DataTable不显示标题栏的方法
2010-09-07 14:32 1704今天碰到一个怪异的需求,用YUI做的表格不要各字段的标题,即下 ... -
YUI中的模块化使用对话框
2010-08-12 16:30 3882最近在试着用YUI 2.8.1,想到一个将对话框模块化的方法, ... -
YUI 3 学习笔记(5)- Attribute类
2010-03-08 16:07 2028Attribute类用于向一个类添加属性,它给类增加了set和 ... -
YUI 3 学习笔记(4)- Base基类
2010-03-05 17:29 1544Base是一个基础类,通过继承Base可以以一种统一的方式创建 ... -
YUI 3 学习笔记(3)- Event
2010-03-03 16:02 2200YUI的Event包可以用来操 ... -
YUI 3 学习笔记(1)-YUI Global对象
2010-03-01 15:38 2081YUI3模块已经发布,配套的工具及部件虽然现在还不全,但也计划 ... -
html5 canvas 小试:绘制2次曲线
2010-02-23 17:27 2254canvas是html5中新增加的元素,可以用来在html中通 ... -
设置innerHTML后翻滚的奇怪现象
2010-01-28 16:47 1150最近碰到一个奇怪的问题,记录一下。 处理过程是这样的,画面的 ... -
ie和firefox上都运行流畅的网页分割条
2010-01-13 14:15 2000这两天因工作需要做了一个网页分割条,期间碰到不少问题,好在最后 ... -
检测浏览器支持的javascript版本
2010-01-05 11:31 1512今天找到一段检测浏览器支持的javascript版本的代码,感 ... -
使用YUI layout时菜单被遮挡问题的解决
2009-10-16 14:00 1431使用YUI layout时菜单被遮挡问题的解决 今天在使用Y ... -
javascript中定义类的几种方法
2009-09-02 15:59 1118在javascript中有几种定义类的方式,以下分别列出并说明 ... -
从服务器获取Chart的数据
2009-08-11 11:04 3030ExtJs提供了绘制图表的功能,可以绘制折线图、条形图和饼图。 ... -
ExtJs树的动态加载
2009-08-06 10:37 4802有时候我们不希望一开始就取得整个树的数据然后初始化树,而是希望 ... -
使用Smooth Navigational Menu实现动态菜单
2009-02-10 14:34 1405在企业应用中一般需要根据登录用户的身份动态生成系统菜单,本文演 ... -
jquery学习笔记(5) AJAX
2009-02-05 10:43 11531. 添加HTML $('#dictionary').loa ... -
jquery学习笔记(4) DOM Manipulation
2009-02-04 14:43 1040本文是Learning JQuery的学习笔记 1. att ...
相关推荐
【标题】"yui-yuidoc-yuidoc-50-529-gc631758" 指向的是一个关于 Yahoo User Interface Library (YUI) 和 YUIDoc 的特定版本或修订版。YUI 是一个开源的 JavaScript 库,提供了一系列模块化的工具,用于构建富有交互...
**yuicompressor-maven-plugin详解** `yuicompressor-maven-plugin`是一款强大的Maven插件,主要用于优化前端资源,特别是JavaScript和CSS文件。这个插件是基于YUI Compressor,一个由Yahoo开发的开源工具,它能...
yui compressor 2.4.6 发布日期:2011-04-15 用例: java -jar yuicompressor-2.4.6.jar myfile.js -o myfile-min.js
### 2. YUI Compressor YUI Compressor是由雅虎开发的一款开源工具,用于压缩JavaScript和CSS代码,通过删除空格、注释和不必要的字符,从而减小文件大小,提升网页加载速度。它支持两种压缩模式:混淆(minify)和...
通过“yui3-master.zip”这个压缩包,开发者不仅可以了解到YUI3的基本架构,还可以通过阅读源码来学习和掌握JavaScript的最佳实践,提升自身的前端开发能力。无论是初学者还是经验丰富的开发者,都能从中受益匪浅。...
yuicompressor-maven-plugin, 用于压缩 (Minify/Ofuscate/Aggregate) Javascript文件和使用 YUI 压缩器的CSS文件的Maven 插件 [[Flattr this git repo] ( http://api.flattr.com/button/flattr-badge-large.png)]...
通过提供的压缩包文件"ext 2.rar"、"ext教程.rar"和"yui_2.3.1.zip",你可以获得YUI-EXT的源码、文档和示例,进一步学习和研究其使用方法。这些资源将帮助你深入理解如何集成YUI-EXT到项目中,如何创建和配置组件,...
C:\java -jar yuicompressor-2.4.2.jar editor.js -o editor2.js 参数说明: yuicompressor-2.4.2.jar 为工具包jar editor.js为要压缩的js -o editor2.js为压缩完成后的文件名 压缩率: 对resources下js...
【Yui_ext 学习笔记】 Yui_ext 是基于 Yahoo! UI Library (YUI) 的扩展,主要用于构建富客户端的 Web 应用程序。这篇学习笔记主要介绍了 Yui_ext 的基础知识,适合对 JavaScript 和 HTML DOM 有一定了解的初学者。 ...
YUI 库,全称Yahoo! UI Library。是一组工具和控件,用JavaScript写成, 为的是用DOM 脚本,DHTML和AJAX等技术创建丰富的网页交互式应用程序。 YUI 基于BSD协议,对所有的使用方式都是免费的。YUI 项目包括YUI 库和两...
如果用 Ant 执行 YUI Compressor 任务时出现了中文乱码,请下载此资源,用这里边 dist 目录里边的 YUIAnt-zh_CN.jar 替换掉官方提供的 YUIAnt.jar ,然后在对应的 Ant 任务中,用 encoding="xxx" 指定源文件的字符...
Locator-Yui 是 YUI 文件定位器插件。它可以与 Locator 组件(from Yahoo! to shift YUI' modules)集成使用,生成 YUI Loader 元数据。已编译的模块则可以通过 express-yui在服务器和客户端中使用。 标签:...
2. **配置File Watcher**:在IDE中,选择`File` > `Settings`(Windows/Linux)或`WebStorm` > `Preferences`(Mac),然后导航到`Tools` > `File Watchers`。 3. **添加新的File Watcher**:点击右上角的"+"按钮,...
前端开源库-node-minify-custom-fork节点小型定制fork,基于babili/yui压缩器/google闭包编译器/uglifyjs2/sqwish/clean css/csso的javascript/css小型化器
将editor.js进行压缩 命令为: C:\java -jar yuicompressor-2.4.2.jar editor.js -o editor2.js 参数说明: yuicompressor-2.4.2.jar 为工具包jar editor.js为要压缩的js -o editor2.js为压缩完成后的文件名 压缩率...
npm install yui-compressor ``` 安装完成后,可以使用以下命令对JavaScript或CSS文件进行压缩: ```bash java -jar path/to/yuicompressor.jar --type js input.js -o output.min.js java -jar path/to/yui...
YUI 3包含了一系列核心模块,如Event(事件处理)、Node(DOM操作)、IO(异步数据交互)等,同时还有许多可选的组件,如Grids(表格)、Charts(图表)、Form(表单元素)等,覆盖了前端开发的多个方面。...
2. **跨浏览器兼容性**:YUI 对多种浏览器进行了优化,包括 Internet Explorer、Firefox、Chrome、Safari 和 Opera,确保在不同环境下表现一致。 3. **强大的 DOM 操作**:提供了一系列 DOM 操作接口,如选择元素、...
- **示例**: `<script src="http://yui.yahooapis.com/3.18.1/build/yui/yui-min.js"></script>` - **用途**: 快速集成到现有项目中。 **1.3 Identifying and Loading Individual Modules** - **关键**: 识别并加载...