$
仅仅是jQuery对象
的一个别名。- 每次调用
jQuery()
,都会产生一个全新的jQuery对象
,该对象继承了所有的内置的方法,这些方法都定义在$.fn对象
中。 $.extends(target.obj1,obj2,...)
,它把多个object对象
的属性和方法合并到一个target对象
中,遇到同名属性时,总是使用靠后的对象的值,越后优先级越高。
index.html
Test JQuery extends Test1 Jquery Extends
Test2 jQuery Extends
Test3 jQuery Extends
Test4 jQuery Extends
Test5 jQuery Extends
MyExtend.js
//开启精确模式'use strict';$(document).ready(function(){ //添加扩展方法1 $.fn.modifyColor=function(options){ //合并默认值与用户的设定值 var opts=$.extend({},$.fn.modifyColor.defaults,options); this.css('backgroundColor',opts.bgColor).css('color',opts.color); //保证链式编程 return this; }; //要在添加了扩展方法之后,预设默认值 $.fn.modifyColor.defaults={ color:'white', bgColor:'black' }; //Test1-预设的默认值 $('#test1').modifyColor(); //Test2-改变默认值 $.fn.modifyColor.defaults={ color:'yellow', bgColor:'blue' }; $('#test2').modifyColor(); //Test3-传参数代替默认值 $('#test3').modifyColor({ color:'red', bgColor:'green' }); //添加扩展方法2 jQuery.fn.extend({ modifyBackGround1: function() { this.css('backgroundColor','red'); return this; }, modifyBackGround2: function() { this.css('backgroundColor','green'); return this; } }); //Test4 $('#test4').modifyBackGround1(); //Test5 $('#test5').modifyBackGround2();});