设为首页收藏本站

嘻皮客娱乐学习网

 找回密码
 中文注册
搜索
打印 上一主题 下一主题
开启左侧

[面试题库] Prototype是怎么扩展DOM的

[复制链接]
跳转到指定楼层
楼主
发表于 2014-11-30 15:40:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Prototype框架最大的一部分就是对DOM的扩展, Prototype为$()范围的元素添加了很多方便的方法,例如, 你可以写一个$(‘comments’).addClassName(‘active’).show()来得到ID为”comments”的元素,然后添加一个Class “active” 然后展示它(如果原本是隐藏的话), “comments”元素在原本的javascript里面并没有这些方法。
Prototype是通过Element.extend()方法来扩展DOM的
大部分DOM方法是由Element.Methods 对象来封装并且复制到Element对象的(为了方便起见),这些方法的第一个参数都是需要操作的element:
Element.hide(‘comments’);
var div_height = Element.getHeight(my_div);
Element.addClass(‘contactform’, ‘pending’);
如果想做得更好一点,你可以把要扩展的对象直接传递给Element.extend()方法,这个方法会直接复制所有的方法到element, 例如:
var my_div = document.createElement(“div”);
Element.extend(my_div);
my_div.addClassName(‘pending’).hide();
document.body.appendChild(my_div);
回复

使用道具 举报

小黑屋|手机版|嘻皮客网 ( 京ICP备10218169号|京公网安备11010802013797  

GMT+8, 2024-5-12 22:35 , Processed in 0.170185 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表