2016-02-10 24 views
7

Ciao Sto cercando di estendere il plugin jQuery this ma sembra che non riesca a trovare un modo per farlo come gli altri plugin. Ho provato:Estendere picEdit Plugin Jquery

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

Ma sembra che le funzioni del plugin siano incapsulate.

Qualcuno sa come sovrascrivere questo specifico plug-in (non modificare/hackerare all'interno del plug-in JS)? Voglio solo sapere se può essere esteso o meno. Grazie.

+0

si prega di spiegare ciò che si vorrebbe ottenere – mylee

+0

non sapevo dell'esistenza di _picEdit_ ... sembra un bel plugin, se ci spieghi quale funzione stai cercando di estendere, e quello che potrebbe essere il vostro risultato atteso, Proverò volentieri ad aiutarti. –

+0

picEdit si presenta come un fantastico plug-in jQuery. –

risposta

0

Credo che questo post possa aiutarti.

Guarda i commenti e c'è anche un esempio di esempio di Matt Hughins su come ottenere ciò.

+0

L'ho provato, ma non funziona, se riesci a vedere il plugin 'picEdit', il pluginName è incapsulato per alcune funzioni al di fuori dell'ambito della funzione plugin. – Cedric

1

È possibile creare un duplicato dell'oggetto picEdit, estendere tale oggetto e impostare jQuery.fn.picEdit sulla copia.

Codice:

(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); 

Buona fortuna, spero che aiuta.

+0

Tornerò da te, se questo funziona, grazie! – Cedric

+0

@Cedric Hai già trovato la risposta, in tal caso, ti dispiacerebbe condividerlo? Sono solo curioso perché questo è un problema che non ho mai visto prima. –

+0

a causa del limite di tempo nel nostro progetto, non ho altra scelta che hackerare il plug-in corrente e modificarlo per soddisfare i nostri requisiti, ma ho provato a rispondere e non funziona. Non hai ancora trovato il modo giusto per estenderlo. – Cedric