$和$ .fn有什么区别?

pal*_*aѕн 3 jquery

我太想知道的区别$$.fn?有谁能详细解释一下这个问题?还有什么$.fn

T.J*_*der 8

$是一个函数(具体来说,是指向jQuery函数的变量- 别名).$.fn是该函数的一个属性,它指向initjQuery用于创建实例的内部函数的原型,我们可以在jQuery代码中看到:

jQuery.fn.init.prototype = jQuery.fn;
Run Code Online (Sandbox Code Playgroud)

(这是当前未缩小的jQuery文件的第289行,v1.8.3.)

$.fn是这样,它很容易添加属性.当您创建jQuery对象时,由于JavaScript的原型继承,它们具有这些属性.当然,添加到它的最常见属性是执行操作的函数(jQuery插件).


Ysh*_*ayy 5

$ .fn是包含所有$()函数的对象($ prototype).因此,如果您在$ .fn上定义一个函数,那么使用$()创建的每个jQuery集合都可以访问您的函数.jQuery插件是使用此方法创建的,例如:

定义:

$.fn.myPlugin = function(){...}

用法:

$(selector).myPlugin();