2010-06-16 11 views
5

Ho due file JavaScript che contengono una funzione jQuery con lo stesso nome $().javascript nome collisione

Come è possibile distinguere tra le due funzioni con lo stesso nome?

+1

Si prega di inviare qualche codice –

+0

Si prega di fornire ulteriori informazioni. –

+0

sì! ... Mi viene da ridere, ma si ... bella domanda! +1 – Reigel

risposta

1

Rinomina uno.

$ = typeof $ !== 'function' ? $ : $foo; 
2

Risposta breve: non è possibile. Tutto include i file js in diretta nello stesso spazio dei nomi.

+0

Inoltre, tutti attaccano semplici nomi di metodi in $ .fn. Quindi qualcosa come '$ .fn.fileupload', '$ .fn.colorpicker', '$ .fn.autocomplete', o '$ .fn.scrollto' sarà probabilmente già definito da qualche libreria. – Triynko

+0

@Triynko: certo, questo è il punto di estensione di jQuery e tu dovresti farlo. Tuttavia, penso che questa non sia la domanda qui. Inoltre, puoi ottenere conflitti di nome anche lì, se per esempio usi due plugin che hanno lo stesso nome lì. –

0

Forse si desidera Using jQuery with Other Libraries, ma non posso dire esattamente quale sia il tuo problema dalla domanda. Forse potresti includere qualche esempio di codice del problema che stai riscontrando?

+0

$ (dmatrix.MatrixData.Combination) .each (function (index) {..} questa è la funzione chiamata dmatrix.MatrixData.Combination è una raccolta ho jquery-1.4.2.js e dotnetnuke .js nella mia App – user368038

0

Provare a utilizzare uno spazio dei nomi per ogni progetto su cui si lavora. Per esempio, invece di scrivere una funzione chiamata dosomething(), chiamala myproject.dosomething()

In questo modo, è specifico del progetto ed eviterai di avere due funzioni identiche, anche se includi file che non hai sviluppare te stesso.