JQ插件写法 扩展JQ方法
目录:
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();
试一下:
https://hamupp.github.io/gitblog/app/jquery/extendDemo.html
二、对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中最大的树
JQ插件写法 扩展JQ方法的更多相关文章
- jq插件写法
如今做web开发,jQuery 几乎是必不可少的,同时jquery插件也是不断的被大家所熟知,以及运用.最近在搞这个jquery插件,发现它的牛逼之处,所以讲一讲jQuery插件的写法以及使用 (f ...
- jq 插件写法
1.一次声明一个函数 $.fn.函数名 = function([options]){} $.fn.red=function(options){ var defaults = { 'color': 'r ...
- css/jq--弹窗写法介绍,jq插件介绍
//html文件 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- 利用jQuery对插件进行扩展时,方法$.extend()、$.fn.extend()区别与联系
利用JQ开发插件的方法: 1.jQuery.extend(); 2.jQuery.fn.extend(); 3.通过$.widget()应用jQuery UI的部件工厂方式创建. 由于第三种方式通 ...
- JQ插件之imgAreaSelect实现对图片的在线截图功能(java版)
前言:在做网站的时候经常用的功能就是,用户上传图片对自己上传的图片进行截图,DIV自己的头像.或者上传幻灯片大图进行DIV设置小图. 解决方案:目前我知道的解决方案有两个如下: 一.fla ...
- 一个简单而实用的JQ插件——lazyload.js图片延迟加载插件
前 言 Cherish 看多了炫酷的插件之后再来看这么一个小清新的东西,是不是突然感觉JQ插件感觉很友好了,简单强大最重要的是实用. 这篇文章将详细讲解一下lazyload.js的用法 lazy ...
- 创建jq插件步骤
无意看了这篇<jQuery插件开发精品教程,让你的jQuery提升一个台阶>文章,现在做一下总结. 一.jQuery插件的创建可以有三种方法 1.通过$.extend()来扩展jQuery ...
- 怎么写jq插件?
1.概述 先看看html代码 <ul id="catagory"> <li><a href="#">jQuery</a ...
- jq插件处女座 图片轮播
好久没写博客了,变得好懒呀,无地自容.最近一直在学sass和jq插件的写法,照猫画虎的谢了一个jq的插件,也算是第一次真正称得上插件的插件 ,废话不多说 上代码 (function($) { $.fn ...
随机推荐
- git如何获取用户名和邮箱
答: git config user.name (获取用户名) git config user.email (获取邮箱)
- Notepad++7.5.4 设置主题,使用插件
首先官网下载 Notepad++7.5.4 默认英文转换成中文 下面设置主题: 设置-->语言格式设置 选择主题Obsidian,字体选择等宽字体Consolas,大小为11,选择全局字体,使用 ...
- 【入门教程】kafka环境搭建以及基础教程
问题导读 1.Kafka独特设计在什么地方?2.Kafka如何搭建及创建topic.发送消息.消费消息?3.如何书写Kafka程序?4.数据传输的事务定义有哪三种?5.Kafka判断一个节点是否活着有 ...
- SublimeText3常用快捷键和优秀插件(亲测)
SublimeText3常用快捷键和优秀插件 SublimeText是前端的一个神器,以其精简和可DIY而让广大fans疯狂.好吧不吹了直入正题 -_-!! 首先是安装,如果你有什么软件管家的话搜一下 ...
- spoj TBATTLE 质因数分解+二分
题目链接:点击传送 TBATTLE - Thor vs Frost Giants #number-theory #sliding-window-1 Thor is caught up in a fie ...
- java 基本数据类型及自动类型提升
1.Java的8种基本数据类型及其所占空间大小: boolean 8bit/1byte byte 8bit/1byte char 16bit/2byte ...
- Python day16 tag式整体退出技巧
在写一些服务器时,往往会多层嵌套循环,可利用tag变量实现整体退出功能,代码: tag=True while tag: print('level1') choice=input('level1> ...
- STL_iterator返回值
1. iterator的类型 有 单向的/双向的/可以随意移动的... 2. 一些 容器/算法 的返回值 是 iterator类型的,如何确定 返回的 iterator是什么类型的? 3.
- java日期获取前一天和后一天
import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import j ...
- 关于C#中的日期的一个简单总结
首先,总结两个简单的方法,实现 秒 与 日期 的相互转换: public class MyTest { /// <summary> /// 将Unix时间戳转换为DateTime类型时间, ...