如何向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'); }); }