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...

面试题 相关文章推荐
数据库面试要点基本概念
Oct 31 面试题
如何为DataGridView添加一个定制的Column Type
Jan 21 面试题
什么是URL
Dec 13 面试题
在子网210.27.48.21/30种有多少个可用地址?分别是什么?
Jul 27 面试题
星空联盟C# .net笔试题
Dec 05 面试题
Linux文件操作命令都有哪些
Jul 23 面试题
什么是GWT的Entry Point
Aug 16 面试题
Python里面search()和match()的区别
Sep 21 面试题
遇到的Mysql的面试题
Jun 29 面试题
线程问题:wait()方法是定义在哪个类里面
Jul 07 面试题
同步和异步有何异同,在什么情况下分别使用他们?
Dec 28 面试题
Java面试题冲刺第十七天--基础篇3
Aug 07 面试题
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高效率写法(详解原因)
2013/06/20 PHP
smarty中js的调用方法示例
2014/10/27 PHP
php+redis实现注册、删除、编辑、分页、登录、关注等功能示例
2017/02/15 PHP
jQuery ui1.7 dialog只能弹出一次问题
2009/08/27 Javascript
Javascript中定义方法的另类写法(批量定义js对象的方法)
2011/02/25 Javascript
autoIMG 基于jquery的图片自适应插件代码
2011/03/12 Javascript
分享一个asp.net pager分页控件
2012/01/04 Javascript
jquery教程限制文本框只能输入数字和小数点示例分享
2014/01/13 Javascript
使用jquery清空、复位整个输入域
2015/04/02 Javascript
简单实现jQuery进度条轮播实例代码
2016/06/20 Javascript
在Web项目中引入Jquery插件报错的完美解决方案(图解)
2016/09/19 Javascript
基于JavaScript实现跳转提示页面
2016/09/24 Javascript
微信小程序购物商城系统开发系列-工具篇的介绍
2016/11/21 Javascript
微信开发 JS-SDK 6.0.2 经常遇到问题总结
2016/12/08 Javascript
微信小程序 配置文件详细介绍
2016/12/14 Javascript
利用vue实现模态框组件
2016/12/19 Javascript
微信分享调用jssdk实例
2017/06/08 Javascript
Vue组件创建和传值的方法
2018/08/17 Javascript
解决layui追加或者动态修改的表单元素“没效果”的问题
2019/09/18 Javascript
Python Tkinter简单布局实例教程
2014/09/03 Python
深入源码解析Python中的对象与类型
2015/12/11 Python
Python标准库之collections包的使用教程
2017/04/27 Python
简单易懂的python环境安装教程
2017/07/13 Python
python中学习K-Means和图片压缩
2017/11/20 Python
python实现按行分割文件
2019/07/22 Python
使用python实现对元素的长截图功能
2019/11/14 Python
PyCharm使用之配置SSH Interpreter的方法步骤
2019/12/26 Python
Django自定义全局403、404、500错误页面的示例代码
2020/03/08 Python
python实现控制台输出彩色字体
2020/04/05 Python
Python中用xlwt制作表格实例讲解
2020/11/05 Python
使用jTopo给Html5 Canva中绘制的元素添加鼠标事件
2014/05/15 HTML / CSS
会计专业应届生自荐信
2014/02/07 职场文书
2015年银行大堂经理工作总结
2015/04/24 职场文书
2015年个人招商工作总结
2015/04/25 职场文书
检讨书怎么写
2015/05/07 职场文书
SQLServer权限之只开启创建表权限
2022/04/12 SQL Server