2016-02-10 93 views
7

嗨,我試圖擴展this jQuery插件,但似乎我似乎無法找到像其他插件一樣的方法。我試過了:擴展picEdit jquery插件

$.fn.picEdit.somefunction = function() { 

但是看起來插件函數是封裝的。

有誰知道如何重寫這個特定的插件(不編輯/黑客JS插件裏面的任何)?我只想知道它是否可以延長。謝謝。

+0

請解釋你想實現什麼 – mylee

+0

我不知道_picEdit_的存在......它看起來是一個非常漂亮的插件,如果你向我們解釋你想要擴展什麼函數,以及你期望的結果是什麼,我很樂意幫助你。 –

+0

picEdit看起來像一個很棒的jQuery插件。 –

回答

0

我相信這個post可以幫助你。

看看這些評論,甚至還有Matt Hughins提出的關於如何實現這個目標的例子。

+0

我試過那個,但它也不起作用,如果你可以看到'picEdit'插件,那麼pluginName被封裝到插件函數範圍之外的某個函數中。 – Cedric

1

您可以創建picEdit對象的副本,擴展該對象並將jQuery.fn.picEdit設置爲副本。

代碼:

(function(window, document, $, undefined) { 
    // your methods 
    var methods = { 
    sayHi: function(name) { 
     alert("Hello " + name); 
    } 
    }; 
    // duplicate of the extended picEdit 
    var newPicEdit = $.extend($.fn.picEdit, methods) 
    // set jQuery.fn.picEdit 
    $.fn.picEdit = newPicEdit; 
})(this, this.document, jQuery); 

祝你好運,希望它幫助。

+0

如果這個工作,我會回到你的男人,謝謝! – Cedric

+0

@Cedric你有沒有找到答案,如果是的話,你會介意分享嗎?我只是好奇,因爲這是我以前從未見過的問題。 –

+0

由於我們項目中的時間限制,我別無選擇,只能破解當前的插件,並對其進行編輯以符合我們的要求,但我已經嘗試了您的答案,但它不起作用。仍然沒有找到正確的方式來擴展它。 – Cedric