Reputation: 11807
When I look at the JQuery plugin code, it almost seems to me that we are creating a function (although we use the JQuery.fn
syntax) Functionally, what's a difference between a function and a plugin?
Upvotes: 2
Views: 1696
Reputation: 630419
A function is just a normal JavaScript function, for example:
function doSomething(param) {
alert(param);
}
A plugin is intended to be run on a set of elements, for example:
jQuery.fn.plugin = function(param) {
return this.attr('something', param);
}
This would set the 'something'
attribute on all elements it was called on, like this:
$('.selector').plugin('value');
If you intend to use the function on a set of elements, like in a jQuery chain, then a plugin may be the answer for you...if you're just calling a function and doing stuff, really having nothing to do with a set of elements, use a plain named function.
Upvotes: 6
Reputation: 138042
The difference is that using $.fn means you can call the function chained onto any jQuery object
Upvotes: 0
Reputation: 48476
Basically a jQuery plugin is a function that is meant to extend jQuery's functionality, and can be applied to selectors more "naturally" than regular functions.
Upvotes: 3