jquery.fn
jQuery.fn 简介
jQuery.fn 是 jQuery 中用于扩展插件或方法的核心属性,本质上是 jQuery.prototype 的别名。通过 jQuery.fn 可以自定义 jQuery 方法,使其能够被所有 jQuery 对象实例调用。
基本用法
定义一个自定义 jQuery 方法,需将函数添加到 jQuery.fn 对象中。例如,创建一个简单的插件:
jQuery.fn.myPlugin = function() {
// 这里的 this 指向当前 jQuery 对象
this.css('color', 'red');
return this; // 保持链式调用
};
调用方式:

$('div').myPlugin(); // 将所有 div 文字颜色设为红色
插件开发要点
保持链式调用
插件应返回 this(即当前 jQuery 对象),以便支持链式操作。例如:
jQuery.fn.chainablePlugin = function() {
return this.each(function() {
// 对每个匹配元素执行操作
});
};
处理多个元素
使用 this.each() 遍历匹配的元素集合,确保插件适用于多个元素:

jQuery.fn.multiElementPlugin = function() {
return this.each(function() {
$(this).addClass('processed');
});
};
示例:简单高亮插件
以下是一个完整的高亮插件实现:
jQuery.fn.highlight = function(color) {
return this.css({
'background-color': color || 'yellow',
'font-weight': 'bold'
});
};
调用方式:
$('p').highlight('#ff0000'); // 高亮段落为红色
注意事项
- 避免命名冲突:建议为插件添加命名空间(如
myPlugin而非通用名称)。 - 参数处理:支持灵活的参数传递(如对象配置或默认值)。
- 性能优化:减少不必要的 DOM 操作,缓存 jQuery 对象。
通过 jQuery.fn 扩展的方法会继承 jQuery 的链式调用特性,并能无缝集成到现有代码中。






