jq扩展

一、先了解jQuery extend方法介绍

jQuery的API手册中,extend方法挂载在jQuery和jQuery.fn两个不同对象上方法,但在jQuery内部代码实现的是相同的,只是功能却不太一样;

且看官方给出解释:

jQuery.extend(): Merge the contents of two or more objects together into the first object.(把两个或者更多的对象合并到第一个当中);

jQuery.fn.extend():Merge the contents of an object onto the jQuery prototype to provide new jQuery instance methods.(把对象挂载到jQuery的prototype属性,来扩展一个新的jQuery实例方法)

简单理解两者区别:

jQuery.extend(object); 为扩展jQuery类本身,为自身添加新的方法。

jQuery.fn.extend(object);给jQuery对象添加方法。

1.1、jQuery.extend(object)


<script>
var object1={name: "xy",
                    sex: "男",
                      age: 97};
var object2={birthday:"1997-02-23"};
$.extend(object1,object2);

//$.extend(object2);alert($.birthday);

$(document).ready(function(){
alert(object1.birthday);//输出1997-02-23

});

</script>

1.12、jQuery.fn.extend(object);


(function($){
$.fn.extend({
foo3:function() {
alert(‘对象级别插件extend方式1‘);
},
bar3:function() {
alert(‘对象级别插件extend方式2‘);
}
})
})(jQuery);

$(document).ready(function(){
jQuery.fn.foo3();//输出对象级别插件extend方式1

});

时间: 2024-10-17 19:39:11

jq扩展的相关文章

JQ 扩展方法

//JS的扩展方法: 1 定义类静态方法扩展 2 定义类对象方法扩展             var aClass = function(){} //1 定义这个类的静态方法             aClass.sayHello = function(){                 alert('say hello');             } //2 定义这个类对象的对象方法             aClass.prototype.protoSayHello = function

JS扩展 或 Jquery的扩展写法

<script>//JS扩展String函数test,其它类推String.prototype.test = function(s){ alert(this+s);}var str = 'hello';str.test('world');//helloworld //JQ扩展(function($){ $.fn.test = function(op){ var defaults = {a:'no'} var setings = $.extend(defaults,op); alert(seti

函数的使用和选择

函数调用: $(document).ready(function (){ function Me(a,b){ return a*b; }; $("p").click(function (){ alert(Me(3,4)); }) }) 首先定义了一个Me()的函数,返回值是对a和b的乘积运算,然后绑定p一个点击事件就可以看到在点击后输出12,比较前面提到过的jq扩展的工具函数调用,$.hello(); 变量: 对于变量在JavaScript中有很详细的解释,变量是内存中存储数据的容器.

Spring.NET-MVCOA项目

1. 项目前奏 工厂模式: 门面模式: 2. OA项目搭建 (1)父接口(IBLL,IDAL)中的类都是部分类,方便拓展. (2)T4模板使用. (3)扩展程序集版本的统一. (4)面向接口编程. (5)类里面的一个对象,依赖外部来对其进行实例化,这个过程叫做控制反转. (6)抽象工厂和实体工厂. (7)DBSessionFactory仓储工厂. (8)反射方式创建DbSessionFactory. (9)所有项目的dll生成路径改到网站项目下面的bin目录. (10)配置文件的读取使用. (1

jquery 星星评分插件

展示: 实现方法: 1.html引用star-grade.js <script type="text/javascript" src="Scripts/star-grade.js"></script> <script type="text/javascript"> $(document).ready(function () { $(".sstar").BindStars();//使用属性da

javascript中的时间版运动

前面的话 速度版JS运动是指以速度为参照,随着路程的变化,时间随之变化:而时间版JS运动是指以时间为参照,随着路程的变化,速度随着变化.相较而言,时间版JS运动更为常用.JQ的animate就是时间版运动.本文将详细介绍时间版JS运动 速度版运动 为何速度版JS更容易理解呢?这要归功于定时器setInterval了.最容易想到的运行形式如下所示 setInterval(function(){ s = s + step },30) 每30ms,路程增加step,实际上就决定了以速度为参照.而ste

HTML5商城开发三 jquery 星星评分插件

展示: 实现方法: 1.html引用star-grade.js <script type="text/javascript" src="Scripts/star-grade.js"></script> <script type="text/javascript"> $(document).ready(function () { $(".sstar").BindStars();//使用属性da

Html页面中select下拉列表框别样用法,一个方法一劳永逸。

很多时候,我们写from表单面,给select标签赋值,都采用这种方式:1.MVC中设创建公共的分部视图:2.直接在前台面中,插入片段后台代码:今天我利用HTML5中的自定义属性,结合JQ扩展方法,写一个通用的JS方法,JS代码如下: $.fn.SetSelect = function () { return this.each(function () { var select = $(this); var url = $(this).attr("data-ajax"); var va

requireJS 从概念到实战

requireJS 可以很轻易的将一个项目中的JavaScript代码分割成若干个模块(module).并且requireJS推荐一个模块就是一个文件,所以,你将获得一些零碎的具有互相依赖关系的JS文件.模块化的好处也浅显意见,那就是大大增强代码的可读性.易维护性.可扩展性.减少全局污染等. 目录: 基本概念requireJS的历史发展模块化的优点require 实战    引入requireJS    参数配置    加载配置文件    定义模块    简单的值对    非依赖的函数式定义