如何向jQuery对象添加新方法?

有没有办法为jQuery的对象添加方法?

例如,我有jQuery对象

a = $('div') 

我希望每个被分配的对象都有特定的方法( doSomething() )所以我可以像调用它一样调用它

 a = $('.foo') a.doSomething() b = $('.bar') b.doSomething() 

您必须将您的函数添加到$.fn名称空间。 请注意,在函数内部, this将引用jQuery对象,而不是DOM对象。

 $.fn.doSomething = function () { this.css('color', 'red'); }; $('#retk').doSomething(); 

jsFiddle演示

请阅读有关编写jQuery插件的更多指南。

像它一样添加它

 $.fn.doSomething = function(data){ // data is the argument passed to doSomething return this.each(function(){ var elem = $(this); //perform operation on elem // like to change background color use elem.css('background-color','red'); }); }