2013-03-25 84 views
0

爲什麼如果我定義jQuery.fn.my_method = function(){...},jQuery.my_method不是未定義的,即使我把my_method放在.fn屬性下,而不是直接放在jQuery下?jquery插件內部工作

我只是好奇。

<script> 
    jQuery.fn.my_method = function(){...}; 
    jQuery.my_method();//valid call even though i put my_method under .fn 
</script> 

回答

1

jQuery.fnjQuery.prototype的別名,就像$如何爲jQuery的別名。你描述的是完全正常的,你正在向原型添加一個方法,然後在對象上變得可用。

我建議你閱讀JavaScript prototypes

+0

哦,我明白了...謝謝。我知道有關原型,如果程序無法直接在對象下找到函數,它會查找其原型。另外原型只能在實例化之前在函數上定義。 – ionescho 2013-03-25 12:03:24