Prototype是怎么扩展DOM的


Posted in 面试题 onOctober 01, 2014
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);

Tags in this post...

面试题 相关文章推荐
如何配置、使用和清除Smarty缓存
Dec 23 面试题
PHP面试题集
Dec 18 面试题
Java的接口和C++的虚类的相同和不同处
Mar 27 面试题
JDO的含义
Nov 17 面试题
C语言中一个结构不能包含指向自己的指针吗
May 25 面试题
关于递归的一道.NET面试题
May 12 面试题
动态密码技术
Oct 18 面试题
linux面试题参考答案(3)
Sep 13 面试题
几个Linux面试题笔试题
Dec 01 面试题
Java Servlet API中forward() 与redirect()的区别
Apr 20 面试题
编程输出如下图形
Nov 24 面试题
正隆泰信息技术有限公司上机题
Jun 14 面试题
GWT都有什么特性
Dec 02 #面试题
JavaScript获取当前url根目录(路径)
Feb 19 #面试题
ajax是什么及其工作原理
Feb 08 #面试题
Ajxa常见问题都有哪些
Mar 26 #面试题
如何利用XMLHTTP检测URL及探测服务器信息
Nov 10 #面试题
百度JavaScript笔试题
Jan 15 #面试题
AJax面试题
Nov 25 #面试题
You might like
php中通过DirectoryIterator删除整个目录的方法
2015/03/13 PHP
codeigniter实现get分页的方法
2015/07/10 PHP
php使用高斯算法实现图片的模糊处理功能示例
2016/11/11 PHP
htm调用JS代码
2007/03/15 Javascript
JAVASCRIPT  THIS详解 面向对象
2009/03/25 Javascript
jQuery 数据缓存模块进化史详细介绍
2012/11/19 Javascript
javascript判断chrome浏览器的方法
2014/03/26 Javascript
jQuery异步验证用户名是否存在示例代码
2014/05/21 Javascript
nodejs中实现路由功能
2014/12/29 NodeJs
整理Javascript函数学习笔记
2015/12/01 Javascript
js实现拖拽效果(构造函数)
2015/12/14 Javascript
JS拖拽组件学习使用
2016/01/19 Javascript
Angular.Js的自动化测试详解
2016/12/09 Javascript
jQuery.cookie.js使用方法及相关参数解释
2017/03/06 Javascript
angular json对象push到数组中的方法
2018/02/27 Javascript
JS中移除非数字最多保留一位小数
2018/05/09 Javascript
在vue中实现点击选择框阻止弹出层消失的方法
2018/09/15 Javascript
Bootstrap的aria-label和aria-labelledby属性实例详解
2018/11/02 Javascript
vue.js实现备忘录demo
2019/06/26 Javascript
python 类详解及简单实例
2017/03/24 Python
python Pandas 读取txt表格的实例
2018/04/29 Python
python 实现单通道转3通道
2019/12/03 Python
opencv之为图像添加边界的方法示例
2019/12/26 Python
python中delattr删除对象方法的代码分析
2020/12/15 Python
Quiksilver美国官网:始于1969年的优质冲浪服和滑雪板外套
2020/04/20 全球购物
测绘工程专业个人自我评价
2013/12/01 职场文书
电子工程专业毕业生求职信
2014/03/14 职场文书
计算机科学技术自荐信
2014/06/12 职场文书
普通党员四风问题对照检查材料
2014/09/27 职场文书
2016年综治宣传月活动宣传标语口号
2016/03/16 职场文书
人民调解协议书
2016/03/21 职场文书
导游词之河北白洋淀
2020/01/15 职场文书
go语言中切片与内存复制 memcpy 的实现操作
2021/04/27 Golang
简单介绍Python的第三方库yaml
2021/06/18 Python
5种方法告诉你如何使JavaScript 代码库更干净
2021/09/15 Javascript
苹果macOS 13开发者预览版Beta 8发布 正式版10月发布
2022/09/23 数码科技