博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JQ插件写法 扩展JQ方法
阅读量:4478 次
发布时间:2019-06-08

本文共 1308 字,大约阅读时间需要 4 分钟。

目录:

1.基本JQ扩展插件js的格式

2.对JQ选中元素的方法的扩展,调用类似于$("selector").myMethod(),这里的myMethod是自己扩展的方法,与.click()同理

3.对JQ自身的方法扩展,调用类似于$.ajax();

 

一、基本JQ扩展插件的格式

一个扩展插件的格式一般是:

(function($){.........})(jQuery);当然,为了防止压缩合并等操作时,它前面的js代码没有结束分号而引起错误,这里可以在前面加个;就是:;(function($){.........})(jQuery);传入参数可以有多个,比如:;(function($, window,document,undefined){.........})(jQuery,window, document);

引用这种写法的插件时,务必要在引入jquery本身之后,再引入插件。

 

二、对JQ选中元素的方法的扩展,调用类似于$("selector").myMethod()

 

类似于.click(),.show()这种调用方式的方法。。属于对jQuery.fn的扩展,所以,扩展自己的方法,这样写:

$.fn.extend({    myMethod: function () {    //用this可以拿到调用该方法的jq dom元素    //do your work    }  });

 或者:

$.fn.myMethod = function(){    //用this可以拿到调用该方法的jq dom元素    //do your work  }; $("#dd").click();

 例如:

封装一个方法:alertWhileClick,点击input时控制台打印出当前input输入框的内容
$.fn.alertWhileClick = function(){        $(this).click(function () {          console.log($(this).val());        });

调用:

$("#demo1Input").alertWhileClick();

试一下:

 

二、对JQ自身的扩展,调用如$.ajax()

$.extend({    myMethod: function (param1, param2....需要传入的参数) {      //do your work    }  });

 

例如扩展一个得到最大最小值的方法:

$.extend({    min: function (a, b) {      //do your work      return a < b ? a : b;    },    max: function (a, b) {      return a > b ? a : b;    }  });

调用如下:

var result = $.max(10,20);//得到10和20中最大的树

 

转载于:https://www.cnblogs.com/hamsterPP/p/7149805.html

你可能感兴趣的文章
HashMap完全解读
查看>>
匿名内部类
查看>>
BZOJ4071: [APIO2015]八邻旁之桥
查看>>
Redis的六种特性 场景
查看>>
mysql 添加[取消]timestamp的自动更新
查看>>
码农的半衰期只有15年?
查看>>
手工释放linux内存
查看>>
2014-5-30 总结
查看>>
【H3 BPM工作流程管理产品小故事】第四篇 子表创建
查看>>
洛谷P1148 拱猪计分
查看>>
MySQL服务器的安装和配置,MySQL Workbench 8.0.12安装,MySQL的基本使用
查看>>
扑克序列
查看>>
java笔记--适配器模式的运用
查看>>
C#与数据结构--图的遍历
查看>>
ispy 编译笔记
查看>>
bzoj1067——SCOI2007降雨量(线段树,细节题)
查看>>
day 1
查看>>
洛谷P1282 多米诺骨牌【线性dp】
查看>>
数据类型的提升(promotion)
查看>>
Thead是不能返回值的,但是作为更高级的Task当然要弥补一下这个功能。
查看>>