jQuery.extend()和jQuery.fn.extend()的区别
Posted crystal827
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery.extend()和jQuery.fn.extend()的区别相关的知识,希望对你有一定的参考价值。
jQuery.extend()一般用于扩展工具函数(也可以说是基于类的扩展)
jQuery.fn.extend()一般用于扩展自定义插件,即用在jQuery实例上的插件(基于对象的扩展)
如:
<div id="test"></div>
$(doument).ready(function() {
$.fn.extend({
sayHello: function() {
console.log(this.html())
}
})
$("#test").sayHello(); //$("#test")即为一个实例,sayHello为作用在该实例上的方法
})
其中方法中的this即是指向调用该方法的实例对象。
如新建一个对象:
var obj = {
name: "crystal",
say: function() {
console.log(this.name); //crystal
}
}
以上代码中的this即指向obj对象,同理,在$.fn.extend中,$("#test")即为实例对象,调用的方法sayHello()指向对象即$("test")。
以上是关于jQuery.extend()和jQuery.fn.extend()的区别的主要内容,如果未能解决你的问题,请参考以下文章
理解jquery的$.extend()$.fn和$.fn.extend()
JQuery的 jQuery.fn.extend() 和jQuery.extend();
jquery.extend()和jquery.fn.extend()