一、全局函数的扩展

全局函数是将独立的函数添加到JQuery的命名空间中区。在使用的时候,可以通过$.fucnName(param)或者jQuery.funcName(param)方式进行调用。

1、直接在JQuery上添加:在jQuery上添加一个全局函数sayHello

jQuery.sayHello=function(name)
{
alert(name+"您好");
};

调用方式:

jQuery.sayHello("张子涵");
//或者用$.sayHello("张子涵");

2、jQuery.extend():其作用是用一个或者多个对象来扩展一个对象,返回被扩展的对象。

2.1  jQuery.extend(dsc,src1,src2…):将src1,src2扩展到dsc对象,并返回扩展后的dsc对象(合并对象)

2.2  jQuery.extend(object):对jQuery命名空间本身进行扩展,结果就是在jQuery命名空间上增加函数。

//在jQuery命名空间上增加两个函数。
jQuery.extend({
min: function(a, b) { return a < b ? a : b; },
max: function(a, b) { return a > b ? a : b; }
});

调用方式

jQuery.min(2,3); // => 2
jQuery.max(4,5); // => 5

二、对象方法的扩展

对象方法的扩展可以让所有jQuery对象调用的方法。

1、jQuery.fn

//在jQuery对象上添加sayHello方法
jQuery.fn.sayHello=function(name)
{
alert(name+"您好");
}

调用

$("div").sayHello("dwqs");

2、jQuery.fn.extend

扩展 jQuery 元素集来提供新的方法(通常用来制作插件)。

//增加两个插件方法。

jQuery.fn.extend({
check: function() {
return this.each(function() { this.checked = true; });
},
uncheck: function() {
return this.each(function() { this.checked = false; });
}
});

调用:

$("input[type=checkbox]").check();
$("input[type=radio]").uncheck();

在下一篇笔记中,将用一个简单的示例讲解如何用这种方式开发插件。

原文首发:http://www.ido321.com/1330.html

下一篇:搜索和网页排名的数学原理

DOM笔记(六):怎么进行JQuery扩展?的更多相关文章

  1. DOM笔记(七):开发JQuery插件

    在上一篇笔记本中,讲解了如何利用jQuery扩展全局函数和对象:DOM笔记(六):怎么进行JQuery扩展? 在这篇笔记本中,将开发一个简单的动画插件,名称是example-plugin,用其实现一个 ...

  2. jQuery选择器和DOM操作——《锋利的jQuery》(第2版)读书笔记1

    第1章 认识jQuery jQuery有以下优势: 轻量级: 强大的选择器: 出色的DOM操作的封装: 可靠的事件处理机制: 完善的Ajax: 不污染顶级变量: 出色的浏览器兼容性: 链式操作方式: ...

  3. jQuery学习笔记(一)--jQuery对象与DOM对象相互转换

    通过标准的JavaScript操作DOM与jQuyer操作DOM的对比,我们不难发现: 通过jQuery方法包装后的对象,是一个类数组对象.它与DOM对象完全不同,唯一相似的是它们都能操作DOM. 通 ...

  4. jQuery笔记(二)jQuery中DOM操作

    前言 本篇主要介绍DOM操作,在说DOM操作之前,首先我们应该熟悉DOM树,以一个例子为例来说明DOM树.首先看这段HTML代码.(本文后面的代码如果没有特别指出,都是针对下述HTML代码进行操作) ...

  5. DOM笔记(五):JavaScript的常见事件和Ajax小结

    一.常见事件类型 1.鼠标事件 事件名称 说明 onclick 鼠标单击时触发 ondbclick 鼠标双击时触发 onmousedown 鼠标左键按下时触发 onmouseup 鼠标释放时触发 on ...

  6. Python之Web前端jQuery扩展

    Python之Web前端: 一. jQuery表单验证 二. jQuery扩展 三. 滚动菜单 一. jQuery表单验证: 任何可以交互的站点都有输入表单,只要有可能,就应该对用户输入的数据进行验证 ...

  7. DOM笔记(三):Element接口和HTMLElement接口

    一.Element接口 Element接口表示一个元素,该接口扩展自Node接口,自然继承了Node接口的属性和方法,也有一套针对元素的属性和方法. Element接口常见的属性比较少,常用的就是一个 ...

  8. java之jvm学习笔记六-十二(实践写自己的安全管理器)(jar包的代码认证和签名) (实践对jar包的代码签名) (策略文件)(策略和保护域) (访问控制器) (访问控制器的栈校验机制) (jvm基本结构)

    java之jvm学习笔记六(实践写自己的安全管理器) 安全管理器SecurityManager里设计的内容实在是非常的庞大,它的核心方法就是checkPerssiom这个方法里又调用 AccessCo ...

  9. Typescript 学习笔记六:接口

    中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...

  10. web前端----jQuery扩展(很重要!!)

    1.jQuery扩展语法 把扩展的内容就可以写到xxxx.js文件了,在主文件中直接导入就行了. 用法1.$.xxx() $.extend({ "GDP": function () ...

随机推荐

  1. SPOJ 1811 Longest Common Substring 后缀自动机

    模板来源:http://www.neroysq.com/?p=76 思路:http://blog.sina.com.cn/s/blog_7812e98601012dfv.html 题意就是求两个字符串 ...

  2. gitlab的搭建和linux客户端的连接

    一.安装 1.新建 /etc/yum.repos.d/gitlab-ce.repo,添加以下内容 1 2 3 4 5 6 7 [gitlab-ce] name=gitlab-ce baseurl=ht ...

  3. PL/SQL 如何导出INSERT语句

    需要把查询出来的数据导出成Insert的语句.忽然发现不会用了. 上网查,找到一些,但都不尽如人意. 于是就写了这篇文章.助人助己. 在PL/SQL Developer左边的树状导航栏里,找到[Tab ...

  4. struts配置。泪奔...

    说多了都是泪啊,配置一个环境一天才搞定.不错the requested resource (/login) is not available in struts,就是找不到什么什么class.亦或th ...

  5. synergy在Windows和ubuntu 多台PC共享一套键盘鼠标

    UBUNTU 服务端安装: sudo apt-get install quicksynergy window 客户端安装: http://www.9ht.com/xz/68108.html#addre ...

  6. HDU (线段树 单点更新) I Hate It

    和上一道题没什么变化,只不过把单点增减变成了单点替换,把区间求和变成了区间求最大值. #include <cstdio> #include <algorithm> using ...

  7. splay入门

    在比较了网上的几份模板的速度之后,发现指针版明显快了很多,但是一敲起来....各种不习惯...所以还是学的hzwer 的数组版... bzoj3223:维护reverse操作就可以了 #include ...

  8. mysql连接超时

    这几天在跟踪一个项目的时候,老是发现mysql连接报timeout的异常. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException ...

  9. Eclipse使用代码清理功能(Clean Up)

    本文转载自http://www.ibm.com/developerworks/cn/opensource/os-eclipse-clean/ 但是为了适应自己使用,还是自己总结了一下. 一.概述 代码 ...

  10. Android用自己的app替换Launcher

    /*********************************************************************** * Android用自己的app替换Launcher ...