2016-11-28 41 views
0

我想訪問從jQuery選擇器訪問的所有可能功能的列表。獲取自定義jQuery插件功能列表

說我創建:

jQuery.fn.myPlugin = function() {}; 

我想擁有所有這些功能的列表(包括本地的人與否,取決於什麼是可能的)。

我預計jQuery.fn工作,但始終返回一種空數組...

> $.fn 
[] 

我無法相信,我不能這樣做呢?

感謝

+0

HVü試圖用$ .fn。 cuz console.log($ .fn)給出了附加到該對象的所有函數和屬性的列表。 – spankajd

回答

2

因爲jQuery的不使用繼承與fn,只有在它使用枚舉的屬性,你可以使用Object.keys得到完整的列表:

var methods = Object.keys(jQuery.fn); 

當然,有些插件開發者可以已選擇使用defineProperty並使其插件功能不可枚舉;如果是的話,我們必須使用Object.getOwnPropertyNames

var methods = Object.getOwnPropertyNames(jQuery.fn); 

我預計jQuery.fn工作,但它總是返回有種空數組...

 
$.fn 
[] 

如果你只需要在控制檯上的這個信息,在Chrome上運行;你只需要點擊旁邊的[]箭頭:

enter image description here

看到列表

enter image description here