2014-02-26 109 views
0

我創建了一個漂亮的jQuery插件,看起來像這樣:像這樣的元素上調用時jQuery插件,有或沒有選擇

;(function($, window, document){ 

    // MyPlugin stuff 

    $.fn.myPlugin = function(){ 

     new MyPlugin(this).init(); 

    } 

)(jQuery, window, document); 

偉大工程:$('.something').myPlugin();但我想也能夠做到這一點$.myPlugin.somemethod()(使用它沒有jQuery選擇器)。

我該怎麼做?謝謝!

+0

您是否嘗試過做呢?如果是這樣,你有什麼嘗試?這裏是一個幾乎重複你的問題的帖子 - http://stackoverflow.com/questions/5764217/creating-custom-jquery-function-without-selector-prerequisite –

回答

2

通過它不重視jQuery的原型(FN),但作爲jQuery,而不是一個性質,或在除插件等:

$.myPlugin = { 
    somemethod : function() { 
     alert('stuff'); 
    } 
} 
+0

所以我不得不添加這個除了$ .fn ...以便我可以兩種方式使用它? – nick

+0

@nick實際上是的,但是如果你需要這兩種方式來完成同樣的事情,那就錯了。 –

+0

我不需要他們爲同一件事。我希望能夠在元素上調用插件,但是我也希望能夠手動調用它,並將選項(否則將在元素中)作爲對象傳入。那有意義嗎? – nick