有没有办法向 jQuery 的对象添加方法?
例如,我有 jQuery 对象
a = $('div')
我希望这样分配的每个对象都有特定的方法(doSomething()
),所以我可以像这样调用它
a = $('.foo')
a.doSomething()
b = $('.bar')
b.doSomething()
有没有办法向 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');
});
}