很多场合,我们都会调用jQuery的插件去完成某个功能,比如slider。

如下图,做一个div,通过“$( "#slider" ).slider();”的方式直接将div变成slider,比起slider($('#slider'))更贴近jQuery的链式调用写法,可读性和通用性更好些。

那么,我们也来为jQuery写插件。便于项目中的组件化。

方法是非常简单的,那就写一个测试的demo来作为基础的验证吧。

定义html,假设我们要把test div修改成宽高都是200px,背景色为红色的这么一个插件功能。

<!DOCTYPE html>
<html><head><meta charset="utf-8"></head><body><div id='test'></div><script type='text/javascript' src="jquery-1.11.3.min.js"></script><script type='text/javascript'>
        </script></body>
</html>

写一个名为test的插件函数,完成插件的功能。这里可以直接使用this,表示选择器选择的那个元素封装对象。

            function test(){this.css('background-color','red');this.css('width', '200');this.css('height', '200');}

完成一个自执行函数,将jQuery传进去,关键就是把插件函数挂到jQuery.fn中去。

            (function(jquery){jquery.fn.test = test;})(jQuery);

调用的时候,就用jQuery选择器选择test div后直接链式调用test插件函数即可。

$('#test').test();

如此,最简单的插件就完成了。

代码:

<!DOCTYPE html>
<html><head><meta charset="utf-8"></head><body><div id='test'></div><script type='text/javascript' src="jquery-1.11.3.min.js"></script><script type='text/javascript'>
            function test(){this.css('background-color','red');this.css('width', '200');this.css('height', '200');}(function(jquery){
                jquery.fn.test = test;})(jQuery);
$('#test').test();</script></body>
</html>

为jQuery写插件相关推荐

  1. 用jQuery写的一个翻页,并封装为插件,

    用jQuery写的一个翻页,并封装为插件, 1 *{ 2 margin:0; 3 padding: 0; 4 list-style: none; 5 text-decoration: none; 6 ...

  2. JQuery模板插件jquery.tmpl-动态ajax扩展

    在上一篇JQuery模板插件-jquery.tmpl中介绍了这款插件.有时我们需要去动态的ajax去加载模板,或者数据,根据url参数或者其他信息加载不同的模板,数据.在我的某个项目中有这个需求,所以 ...

  3. JQuery自定义插件详解之Banner图滚动插件

      前  言 JRedu JQuery是什么相信已经不需要详细介绍了.作为时下最火的JS库之一,JQuery将其"Write Less,Do More!"的口号发挥的极致.而帮助J ...

  4. jQuery对象插件封装步骤

    jQuery是js的一个非常优秀的库,它大大简化了js的很多操作,并且解决了js的大部分兼容性问题.甚至很多css兼容性问题,用jQuery写都能解决. 这里是对象插件的封装.当然,封装插件很多,这里 ...

  5. JQuery图表插件Highcharts示例教程

    JQuery图表插件Highcharts示例教程,先上图,大伙Show一下效果:先上三个图,分别是曲线.柱状.扇形. 图表中的数据纯属于DEMO的测试数据,没有实际用意.下面讲下大致的实现步骤 第一步 ...

  6. 多库共存 包装集的问题 点击按钮创建一个p 几个属性介绍 jQuery的插件

    多库共存 <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8 ...

  7. html5 jquery paint plugin,制作高质量的JQuery Plugin 插件的方法

    JQuery Plugin插件,如果大家不明白什么是JQuery插件或都不清楚如何编写可以查看其官方的网站:jQuery Authoring Guidelines 好了,下面有一些我觉得想做一个好的插 ...

  8. html中字段是日期控件,jQuery日历插件datepicker用法详解

    jQuery是一款不可多得的非常优秀的javascript脚本开发库,而基于其上的很多插件也是非常规范和卓越的,如果错过这番美景真是太可惜了,比如datepicker这个插件. 一般MIS系统的前端, ...

  9. jQuery编写插件

    引言: 在项目中不同页面经常要用到已经写好的交互,比如弹窗,比如下拉菜单,比如选项卡,比如删除... 此时如果每次都把代码copy一份无疑是一件比较麻烦并且无趣的事情,而且个人认为有些low了,我们可 ...

最新文章

  1. CTO 说了,如果发现谁用 kill -9 关闭程序就开除
  2. AI洞观 | 一文读懂英特尔的AI之路
  3. JavaScript学习笔记(七)——函数的定义与调用
  4. LeetCode Intersection of Two Arrays
  5. php mysql update 返回_php mysql_query增删改查(update delete insert)返回值类型
  6. java中的基本数据类型(四类八种)
  7. Java学习笔记_多态/内部类
  8. 数学--数论--POJ281(线性同余方程)
  9. 以太坊账户 相关知识
  10. BNU44583——Star Trek: First Contact——————【01背包】
  11. 【二 HTTP编程】2. HTTP路由
  12. 终极算法:机器学习和人工智能如何重塑世界笔记(转)
  13. 关于PC套件显示红外连接出现问题而导致连接不上的解决方案(zz)
  14. 将jar文件安装为系统服务
  15. FirefoxOS 系统进程初步分析 底层系统继承自 android
  16. Linux 服务器部署 vue(SPA) 与 nuxt(SSR)项目
  17. win10 windows文件查找通配符
  18. python不支持单字符类型_Python数据类型之字符串
  19. Git拉代码到本地并运行Vue/springboot项目代码(以内网gitlab为例)
  20. 行星怎么画简单又漂亮,有手就会系列,超级简单!

热门文章

  1. 【POI 2007】Tetris Attack 正方体大作战(tet)
  2. 通过Spark进行ALS离线和Stream实时推荐
  3. Java基础之I/O流
  4. 里程碑:DTrace 切换到 GPL 许可证
  5. VBA实现两种方法生成任意概率分布的随机数
  6. 智慧城市建设的关键技术研究
  7. AlwaysOn 部分笔记及文档连接
  8. 修改CentOS7网卡名称为传统名称eth0格式(20170711更新)
  9. SharePoint 沙盒解决方案 VS 场解决方案
  10. 部署 SCCM 2012R2之三:系统准备篇