2013-02-26 91 views
0

我必須缺少一些非常基本的東西&認爲我需要一個紙板合作伙伴。 我已經爲jQuery添加了一個新的方法,但是,正如在下面的螢火蟲命令行體驗中一樣,它不起作用,因爲該方法不存在。最簡單的jQuery插件,爲什麼這不起作用?

jQuery教程都說要寫這個代碼,這有什麼問題呢?

$.fn.bob = function() {alert('bob!');}

>()函數

$.bob()

>類型錯誤:$ .bob不是一個函數

回答

3

$.fn引用jQuery函數$()

所以,你的功能就必須這樣調用:

$('anything').bob(); 

您也可以直接擴展jQuery對象,並調用該函數,你打算:

$.bob = function(){ alert('bob!') } 
$.bob(); 
+0

感謝您的全面回答。我應該意識到這一點,但我現在抱着一個微弱的希望,我的失敗有一天會幫助別人;-) – PandaWood 2013-02-26 23:09:51

+0

沒問題。我相信你不是第一個問這個問題的! – 2013-02-26 23:33:17

1

你需要使用它jQuery對象上:

$('body').bob()

+0

權,當然。我很困惑,因爲我想用$ .myAjax替換我的調用到$ .ajax - 就像靜態調用一樣。看起來像我需要$ .myAjax = function(){} – PandaWood 2013-02-26 01:57:48

+1

正如Frederik上面所說的那樣,只需在'$ .myAjax()'而不是'$ .fn'上定義函數 – kennypu 2013-02-26 02:00:21

相關問題