所以我似乎無法找到一個直接的答案,只有模糊的多個變化的例子,其中使用類似的插件/方法聲明。我知道,說
$.fn.myPlugin
我定義,可以任何有效的jQuery對象,其中FN表示原型上執行的公開可用的插件方法。我的問題是,然後,通過定義一個方法,我的主要插件任內,像這樣
$.fn.myPlugin.methodName
或我的插件之外,像這樣
$.something.methodName //where 'something' is in place of 'fn'
這是否會影響它是一個公私/方法?如果每種都是不同類型的聲明,那麼區別是什麼。
爲什麼我想知道,爲了給出一些情況的背景是,我想定義一個可以調用並正常運行的主插件,但是如果最終用戶想要重新定義某種方法我已經允許公開,然後他們可以做到這一點。如果我有任何方法,我不希望用戶重新定義,而是提供回調,以便他們可以掛鉤,那麼我想讓這種方法是私人的。
如果你設置的'$ .whatever'任何東西,那麼它的公... –
所以我會再做'$ .fn.myPlugin.privateMethod'以聲明爲myplugin的私有方法? – Turk
不可以。您不能在這樣的公共範圍內創建私有方法。看看下面的@NiettheDarkAbsol提供的答案,看看如何去做。 – Archer