2011-06-14 174 views
4

$ .myfunc和$ .fn.myfunc有什麼區別?我可以看到一個需要返回值並使用$()。myfunc()來調用,而另一個不是。社區能否給我提供一些參考或關鍵詞以獲得更多理解?謝謝。jQuery函數聲明

回答

7

$ .myfunc引用jquery名稱空間中的「靜態」或全局函數。它不依賴於通過$('#id')。myfunc(...)等選擇器進行jquery初始化。

$ .ajax就是一個例子。

$ .fn.myfunc另一方面將myfunc添加到jquery對象的原型,以便當通過選擇器$('#id')創建jquery objetc時,新對象具有一個名爲myfunc的方法,在新創建的jquery對象的上下文中是可調用的。

4

$.fnjQuery.prototype的快捷方式。它擴充了jQuery對象。它用於處理與選擇器一起選擇的一組元素。

$('a').newWindow(); 

相信直接$分配屬性會使其效用函數,如each()(不依賴於特定的一組匹配的元素)。

var sum = $.arraySum(array);