如何开发一个JQuery插件


Posted in 面试题 onJuly 28, 2016
JQuery有两种开发插件的方法:
jQuery.fn.extend(object);
jQuery.extend(object);
jQuery.extend(object);方法为扩展jQuery类本身.并为类添加新的方法。
jQuery.fn.extend(object)方法是给jQuery对象添加方法。
jQuery.fn = jQuery.prototype.
虽然 javascript 没有明确的类的概念,但是用类来理解它,会更方便。
jQuery便是一个封装得非常好的类,比如我们用 语句 $(“#btn1″) 会生成一个 jQuery类的实例。
jQuery.extend(object); 为jQuery类添加添加类方法,可以理解为添加静态方法。如:
$.extend({
add:function(a,b){return a+b;}
});
便为 jQuery 添加一个为 add 的 “静态方法”,之后便可以在引入 jQuery 的地方,使用这个方法了,
$.add(3,4); //return 7
jQuery.fn.extend(object); 对jQuery.prototype进得扩展,就是为jQuery类添加“成员函数”。jQuery类的实例可以使用这个“成员函数”。
比如我们要开发一个插件,做一个特殊的编辑框,当它被点击时,便alert 当前编辑框里的内容。可以这么做:
Java代码
1. $.fn.extend({
2.
3. alertWhileClick:function(){
4.
5. $(this).click(function(){
6.
7. alert($(this).val());
8. });
9.
10. }
11.
12. });
13.
14. $(“#input1″).alertWhileClick(); //页面上为:
$.fn.extend({
alertWhileClick:function(){
$(this).click(function(){
alert($(this).val());
});
}
});
$(“#input1″).alertWhileClick(); //页面上为:
$(“#input1″) 为一个jQuery实例,当它调用成员方法 alertWhileClick后,便实现了扩展,每次被点击时它会先弹出目前编辑里的内容。
jQuery提拱了丰富的操作文档,事件,CSS ,Ajax、效果的方法,结合这些方法,便可以开发出更加 Niubility 的插件。

Tags in this post...

面试题 相关文章推荐
如何处理简单的PHP错误
Oct 14 面试题
华为的Java面试题
Mar 07 面试题
介绍Java的内部类
Oct 27 面试题
strstr()的简单实现
Sep 26 面试题
SQL数据库笔试题
Mar 08 面试题
Oracle性能调优原则
May 03 面试题
sort命令的作用和用法
Nov 04 面试题
简述进程的启动、终止的方式以及如何进行进程的查看
Feb 20 面试题
JAVA中运算符的分类及举例
Sep 12 面试题
META-INF文件夹中的MANIFEST.MF的作用
Jun 21 面试题
AssertionError 跟一下那个类是 “is – a”的关系
Feb 21 面试题
什么是继承
Dec 07 面试题
什么是GWT的Entry Point
Aug 16 #面试题
AJAX的优缺点都有什么
Aug 18 #面试题
DOM和JQuery对象有什么区别
Nov 11 #面试题
主要的Ajax框架都有什么
Nov 14 #面试题
如何用JQuery进行表单验证
May 29 #面试题
Ajax主要包含了哪些技术
Jun 12 #面试题
如何整合JQuery和Prototype
Jan 31 #面试题
You might like
全国FM电台频率大全 - 1 北京市
2020/03/11 无线电
PHP图像处理类库MagickWand用法实例分析
2015/05/21 PHP
Laravel如何实现适合Api的异常处理响应格式
2020/06/14 PHP
JavaScript中“+=”的应用
2007/02/02 Javascript
javaScript 读取和设置文档元素的样式属性
2009/04/14 Javascript
cookie丢失问题(认证失效) Authentication (用户验证信息)也会丢失
2009/06/04 Javascript
jQuery满屏焦点图左右滚动特效代码分享
2015/09/07 Javascript
JavaScript 正则表达式中global模式的特性
2016/02/25 Javascript
使用RN Animated做一个“添加购物车”动画的方法
2018/09/12 Javascript
Django+Vue实现WebSocket连接的示例代码
2019/05/28 Javascript
ES6 Proxy实现Vue的变化检测问题
2019/06/11 Javascript
Vue左滑组件slider使用详解
2020/08/21 Javascript
[02:49]2014DOTA2电竞也是体育项目! 势要把荣誉带回中国!
2014/07/20 DOTA
使用python解析xml成对应的html示例分享
2014/04/02 Python
Python入门篇之列表和元组
2014/10/17 Python
python实现一次创建多级目录的方法
2015/05/15 Python
python&MongoDB爬取图书馆借阅记录
2016/02/05 Python
python获取外网IP并发邮件的实现方法
2017/10/01 Python
python判断字符串是否是json格式方法分享
2017/11/07 Python
Python 中Pickle库的使用详解
2018/02/24 Python
Python打印输出数组中全部元素
2018/03/13 Python
python绘制漏斗图步骤详解
2019/03/04 Python
TensorFlow内存管理bfc算法实例
2020/02/03 Python
使用python 计算百分位数实现数据分箱代码
2020/03/03 Python
解决导入django_filters不成功问题No module named 'django_filter'
2020/07/15 Python
使用python tkinter开发一个爬取B站直播弹幕工具的实现代码
2021/02/07 Python
HTML+CSS3+JS 实现的下拉菜单
2020/11/25 HTML / CSS
Spartoo西班牙官网:法国时尚购物网站
2018/03/27 全球购物
Java中各种基本数据类型的默认值都是什么
2016/12/22 面试题
开学典礼感言
2014/02/16 职场文书
中层干部培训方案
2014/06/16 职场文书
刑事代理授权委托书
2014/09/17 职场文书
商场圣诞节活动总结
2015/05/06 职场文书
《最后一头战象》教学反思
2016/02/16 职场文书
Windows7下FTP搭建图文教程
2022/08/05 Servers
关于MySQL中explain工具的使用
2023/05/08 MySQL