## 1.2\. jQuery支持2种插件方式
* $.somePlugin
* $.fn.somePlugin
### 1.2.1\. Global工具类的插件
比如
```
$.trim('hello world ')
```
这个方法是用于去掉空格的工具方法。它其实是给jQuery对象上增加了trim方法。
此种插件一般是工具类的方法。
### 1.2.2\. 基于selector的插件
比如
```
$('.mytab').tab({
change: function(index){
console.log('current index = ' + index);
}
});
```
这实际是一个tab插件最简单的用法。
这个插件的特点是它前面必须是选择器,那么就可以是一个也可以多个,因为选择器有很多种,选择器返回的是数组,比如例子中的.mytab,在一个html文档里可以有多个
比如
```
<div class='mytab'>
</div>
<div class='mytab'>
</div>
<div class='mytab'>
</div>
<div class='mytab'>
</div>
```
这样就可以形成4个tab里。
jQuery的哲学是“write less,do more”,它做到了么?
### 1.2.3\. 我们要讲的是后者
相比较而言,工具类的插件基本没有难度,它就是普通的function,即没有配置也没有selector,所以这里不做介绍。 而基于selector的插件复用程度高,又是基于配置的,在实际中应用非常广泛,是我们本节介绍的重点。