没有合适的资源?快使用搜索试试~ 我知道了~
mootools详细教程pdf版.pdf
4星 · 超过85%的资源 需积分: 10 27 下载量 163 浏览量
2011-06-21
10:05:26
上传
评论
收藏 298KB PDF 举报
温馨提示
试读
48页
mootools详细教程pdf版.pdfmootools详细教程pdf版.pdfmootools详细教程pdf版.pdfmootools详细教程pdf版.pdf
资源推荐
资源详情
资源评论
mootools 框架【一】-Element 篇: 方法
完全解析
• 编辑:ymaozi 发布时间:2008-10-12 字号:【大 中 小】 阅读次数:
224 【加入收藏夹】
• 相关专题:mootools框架
javascript框架
mootools--Element 篇
--内容: 封装一些常用的 DOM 操作
(1).直接可以在 xhtml 中进行操作元素. 而不用嵌套在<script>标签中使
用 javascript 操作.
(2).用 $ 代替 javascript 中 document.getElmentById 方法. 操作元素只需
要使用 $('myElement')即可.
(3).增加了很多方便实用的方法, 这些方法使对 元素 的各种复杂的操作变得
容易, 摈弃(应该是封装)了原来繁琐的 DOM 操作. 以 appendText 为例 :
方法:appendText
作用:向元素添加文本节点
例子:
<div id="myDiv1">hello </div>
$('myDiv1').appendText('world');
//结果为:
<div id="myDiv1">hello world</div>
Ajax 开发中,做的最多的就是对 DOM 的操作,增删节点,设置样式等等等
等,如果按照常规的 javascript 开发的话,工作量大的足以搞的人头晕目眩。
所以基本上每个 javascript 框架都会在 DOM 操作上花比较大的功夫,对我们使
用频率最频繁的作用操作进行封装(其中包括修正各个浏览器之间的方法差异问
题)。mootools 提供了一套非常出色的解决方案,并且更 OO。
创建 DOM 节点
例子:var myInput = new Element('input');
1. 方法:$
作用:按照 id 取元素,如同 document.getElmentById 来获取的元素
即: 这里的 $ 相当于 document.getElmentById, 两者功能是相同的.
例子:
//获取元素
var myDiv=$("myDiv");
//将用 getElementById 获取的元素进行扩展成使用$方法获取的元素
//这样可以具备一些特殊的方法
var mydiv_noextend=document.getElementById("mydiv");
var mydiv_extended = $(mydiv_noextend);
2. 方法:$$
作用:通过 CSS 选择器语法来获取 DOM 元素(需要 mootools 的 Dom.js 模块的
支持)
例子:
$$('a'); //获取页面上所有超链接<a>标签对象
$$('a','b'); //获取页面上所有超链接<a>标签和粗体<b>标签
$$('#my_div'); //获取 id 为 my_div 的元素
$$('#my_div a.myClass'); //获取 id 为 my_div 的元素子元素,并且这些
自元素是的所有 class="myClass"的<a>标签
----------------------------------------Element 扩展方法
------------------------------------
3. 方法:inject
作用:可以用来把当前元素插入到指定元素之前(before),之中(inside),之后
(after)。
例子:
<div id="myDiv1">aaa</div>
<div id="myDiv2">bbb</div>
<div id="myDiv3">ccc</div>
$('myDiv3').inject($('myDiv1'),'before'); //把 myDiv3 插入到 myDiv1 之前
//结果:
<div id="myDiv3">ccc</div>
<div id="myDiv2">bbb</div>
<div id="myDiv1">aaa</div>
4. 方法:injectBefore
作用:可以用来把当前元素插入到指定元素之前 (即相当于参数为'before'的
inject 方法)
例子:
<div id="myDiv1">aaa</div>
<div id="myDiv2">bbb</div>
<div id="myDiv3">ccc</div>
$('myDiv3').injectBefore($('myDiv1'));
5. 方法:injectAfter
作用:可以用来把当前元素插入到指定元素之后 (即相当于参数为'after'的
inject
方法)
例子:
<div id="myDiv1">aaa</div>
<div id="myDiv2">bbb</div>
<div id="myDiv3">ccc</div>
$('myDiv3').injectAfter($('myDiv1'));
6. 方法:injectInside
作用:可以用来把当前元素插入到指定元素之中 (即相当于参数为'inside'的
inject 方法)
例子:
<div id="myDiv1">aaa</div>
<div id="myDiv2">bbb</div>
<div id="myDiv3">ccc</div>
$('myDiv3').injectInside($('myDiv1'));
7. 方法:adopt
作用:可以在当前元素中插入指定元素 (元素嵌套)
(参数可以是元素 id,元素引用,html 元素 tag 名)
例子:
$('myDiv').adopt($('myDiv1'));
$('myDiv').adopt('myDiv1');
$('myDiv').adopt('button');
8. 方法:remove
作用:删除元素
例子:$('myDiv').remove();
9. 方法:clone
参数列表:
contents:是否连带节点的内容进行复制(deep clone),如果不指定,则连
带。
作用:复制元素
例子:
$('myDiv').clone();
$('myDiv').clone(false); //只复制 myDiv 本身,不复制其 content 和子 s
10. 方法:replaceWith
作用:用其他元素替换当前元素
例子:
<div id="myDiv1">abc</div>
var a = new Element('button');
a.value = 'test';
$('myDiv1').replaceWith($(a));
11. 方法:appendText
作用:向元素添加文本节点
例子:
<div id="myDiv1">hello </div>
$('myDiv1').appendText('world');
//结果:
<div id="myDiv1">hello world</div>
12. 方法:hasClass
作用:判断元素的 class 属性中是否包含指定的样式名
例子:
<div id="myDiv1" class="clazz_1 clazz_2">hello </div>
var x = $('myDiv1').hasClass('clazz_1'); //true
13. 方法:addClass
作用:向指定元素上添加样式 class
例子:$('myDiv1').addClass('clazz_1');
14. 方法:removeClass
作用:在指定元素上删除指定的样式 class
例子:$('myDiv1').removeClass('clazz_1');
15. 方法:toggleClass
作用:在 addClass 和 removeClass 的功能之间切换
例子:
<div id="myElement" class="myClass"></div>
$('myElement').toggleClass('myClass');
//结果为:
<div id="myElement" class=""></div>
//再次:
$('myElement').toggleClass('myClass');
//结果为:
<div id="myElement" class="myClass"></div>
16. 方法:setStyle
作用:向元素设置一个 style 属性
例子:$('myDiv').setStyle('width','100px');
17. 方法:setStyles
作业:向元素设置多个 style 属性
例子:
$('myDiv').setStyles({
border: '1px solid #000',
width: '300px',
height: '400px'
});
或者(不推荐在这种方式下设置 opacity 属性):
$('myDiv').setStyles('border:1px solid #000; width: 300px; ');
18. 方法:setOpacity
作用:设置元素的透明度
例子:$('myDiv').setOpacity(0.5); //透明度设置为 50%
19. 方法:getStyle
作用:获取 style 中指定属性的值
例子:var w = $('myDiv').getStyle('width');
20. 方法:addEvent
作用:为元素增加事件监听器
例子:
$('myDiv').addEvent('click', function(){
alert('haha,clicked!');
});
说明: 1. 这里把定义事件与添加事件结合起来写是可以的, 可以提高书写效率.
建议初学者先定义事件, 然后再添加事件到元素中. 方法见 22: removeEvent
2. 结合写的顺序是: $('..').addEvent('触发方式', function(e) { 行
为 });
3. 事件的行为可为空, 本例行为为: 单击弹出框
21. 方法:addEvents
作用:为元素增加多个事件监听器
例子:
$('myBtn').addEvents({
'click': function(e){alert('clicked!!!');},
'mouseout': function(e){alert('mouseouted!!!');}
});
注意: 每一个事件都需要使用大括号括起来. 相当于事件数组.
22. 方法:removeEvent
作用:从元素上删除指定的监听器方法
例子:
//先定义两个事件, 同时给事件定义行为.
var fa = function(e){alert('aaaaaaaaaaaaaa');};
剩余47页未读,继续阅读
资源评论
- wang111238532013-12-09还行吧,能解决我的一些简单问题
- skyworld1234562012-08-01不怎么好,感觉不是很详细。
skyhighspeed
- 粉丝: 0
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功