|
在编写widget的时候,一般我们需要绑定一些事件,最好将这些widget的绑定事件加上当前widget的命名空间。
1、在编写widget的时候,一般我们需要绑定一些事件,最好将这些widget的绑定事件加上当前widget的命名空间。如果同一个jQuery对象,使用了两个widget,而两个widget都绑定了相同的事件名称,可能会出现问题。在销毁widget的时候,去除绑定事件也很方便,只需要unbind(”.namespace“)就可以了。 2、在写jQuery的时候,因为jQuery对象是支持连写的。譬如:$(obj).css("height","20px").attr("title","abc").... 3、在编写的时候可以利用javascript的原生方法来避免switch。 复制代码 代码如下: switch(a) { case "aa": this._set_aa(); break; case "bb": this._set_bb(); break; case "cc" this._set_cc(); break; } 上面的代码可以用下面的代码替换 复制代码 代码如下: this["_set_"+a](); 4、尽量缓存jQuery对象,和各种变量。这样可以提高脚本的性能 5、采用变量缓存this指针,在最小化代码的时候this可以被最小化掉。 6、最好将css类名取一致的名称,然后定义变量保存起来。在使用的时候直接采用变量,这样就算css名称有调整,只需要改变变量缓存的值即可。同时代码在最小化的时候也能减小体积。 7、setOption的时候,如果一个option是复杂对象,而不是简单的值对象,最好不要简单的this.options[key]=value.而在这之前需要将value和以前的option的值做一个extend,然后在赋值,这样可以保留复杂对象原有的部分值。比如: 复制代码 代码如下: var a = {width:120,height:200}; var c={width:200}; a=c; a=$.extend(a,c); 其结果是第一个a将是{width:20},会丢失掉height:200;而下面的那个将继续保留原始的height:200。 |
|