2013-10-18 74 views
-2
var foo = function(value) { 
      alert("foo: " + value); 
     }; 

     // Another function to also be added to the list 
     var bar = function(value) { 
      alerts("bar: " + value); 
     }; 

     var callbacks = $.Callbacks(); 

當我想在firefox瀏覽器中運行上面的代碼時,它向我展示$ .Callbacks()不是函數。回調()不是函數

+2

你在你的代碼中包含jQuery庫嗎? – Luke

+3

它適用於我http://jsbin.com/AWOHAnI/1/edit – exexzian

+2

檢查,'if(typeof $ .fn.Callbacks!=='undefined')'或'typeof $ .fn.Callbacks' - 但是作爲@Coulton提到,聽起來非常像沒有包含jQuery;] – MackieeE

回答

1

它可能是你的代碼在jquery加載之前執行。請在document.ready中調用該函數,以便僅在加載完整頁面時調用該函數。

$(document).ready(function() { 
var foo = function(value) { 
      alert("foo: " + value); 
     }; 

     // Another function to also be added to the list 
     var bar = function(value) { 
      alerts("bar: " + value); 
     }; 

     var callbacks = $.Callbacks(); 

callbacks.add(foo); 
callbacks.fire("test"); 
} 
+0

他沒有訪問DOM,爲什麼他需要將它包裝在DOM就緒函數中? – Johan