jQuery編寫widget的一些技巧分享
更新時間:2010年10月28日 12:54:06 作者:
在編寫widget的時候,一般我們需要綁定一些事件,最好將這些widget的綁定事件加上當(dāng)前widget的命名空間。
1、在編寫widget的時候,一般我們需要綁定一些事件,最好將這些widget的綁定事件加上當(dāng)前widget的命名空間。如果同一個jQuery對象,使用了兩個widget,而兩個widget都綁定了相同的事件名稱,可能會出現(xiàn)問題。在銷毀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名稱有調(diào)整,只需要改變變量緩存的值即可。同時代碼在最小化的時候也能減小體積。
7、setOption的時候,如果一個option是復(fù)雜對象,而不是簡單的值對象,最好不要簡單的this.options[key]=value.而在這之前需要將value和以前的option的值做一個extend,然后在賦值,這樣可以保留復(fù)雜對象原有的部分值。比如:
var a = {width:120,height:200};
var c={width:200};
a=c;
a=$.extend(a,c);
其結(jié)果是第一個a將是{width:20},會丟失掉height:200;而下面的那個將繼續(xù)保留原始的height:200。
2、在寫jQuery的時候,因為jQuery對象是支持連寫的。譬如:$(obj).css("height","20px").attr("title","abc")....
3、在編寫的時候可以利用javascript的原生方法來避免switch。
復(fù)制代碼 代碼如下:
switch(a)
{
case "aa":
this._set_aa();
break;
case "bb":
this._set_bb();
break;
case "cc"
this._set_cc();
break;
}
上面的代碼可以用下面的代碼替換
復(fù)制代碼 代碼如下:
this["_set_"+a]();
4、盡量緩存jQuery對象,和各種變量。這樣可以提高腳本的性能
5、采用變量緩存this指針,在最小化代碼的時候this可以被最小化掉。
6、最好將css類名取一致的名稱,然后定義變量保存起來。在使用的時候直接采用變量,這樣就算css名稱有調(diào)整,只需要改變變量緩存的值即可。同時代碼在最小化的時候也能減小體積。
7、setOption的時候,如果一個option是復(fù)雜對象,而不是簡單的值對象,最好不要簡單的this.options[key]=value.而在這之前需要將value和以前的option的值做一個extend,然后在賦值,這樣可以保留復(fù)雜對象原有的部分值。比如:
復(fù)制代碼 代碼如下:
var a = {width:120,height:200};
var c={width:200};
a=c;
a=$.extend(a,c);
其結(jié)果是第一個a將是{width:20},會丟失掉height:200;而下面的那個將繼續(xù)保留原始的height:200。
相關(guān)文章
jQuery實現(xiàn)鼠標(biāo)經(jīng)過顯示動畫邊框特效
本文主要介紹了jQuery鼠標(biāo)經(jīng)過顯示動畫邊框特效的實例代碼。具有很好的參考價值。下面跟著小編一起來看下吧2017-03-03
淺談JSON和JSONP區(qū)別及jQuery的ajax jsonp的使用
文章從JSON和JSONP區(qū)別開始講起,用實例來對比他們之間的不同之處,然后詳細(xì)講解了jQuery中的ajax jsonp的使用并給出了示例及詳細(xì)參數(shù)說明。這里推薦給大家,希望對小伙伴能有所幫助2014-11-11
jQuery+css實現(xiàn)的tab切換標(biāo)簽(兼容各瀏覽器)
這篇文章主要介紹了jQuery+css實現(xiàn)的tab切換標(biāo)簽,可兼容各瀏覽器,涉及jQuery響應(yīng)鼠標(biāo)事件動態(tài)操作頁面元素的相關(guān)技巧,需要的朋友可以參考下2016-01-01

