Je suis en train de développer un addon Firefox, après avoir nommé l'addon pour la version publique dans le site Firefox addons, le critique m'a demandé d'emballer toutes mes fonctions dans un espace de noms ou un nom de paquet.Wrap jQuery fonction
Jusqu'à présent, j'ai enveloppées toutes mes fonctions, sauf la fonction « jQuery »:
myaddonname = {
initialize: function() {
var prefManager = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
if (document.getElementById("contentAreaContextMenu") != null) {
document.getElementById("contentAreaContextMenu").addEventListener("popupshowing", this.onContextMenuPopup(), false);
}
jQuery.noConflict();
},
.
.
.
.
}
jQuery.noConflict et d'autres appels de jQuery Ajax sont encore déballés, une façon de le faire?
l'environnement est inconnu parce que chaque utilisateur qui téléchargera mon addon aura différents autres addons qui pourraient entrer en conflit avec le mien. alors est-ce que ça vaut le coup ou pas de l'utiliser (j'utilise juste les fonctions Ajax de base pas d'autres plugins)? et encore une chose qu'en est-il de "window.myaddonname" est-il préférable d'écrire une fenêtre avant? parce que l'espace de noms par défaut de firefox est "chrom" ou quelque chose comme ça. –
@Khaled Si 'window' n'existe pas, alors pourquoi ne pas l'affecter à un objet global (que vous pouvez référencer via' this' depuis votre fonction anonyme). – kangax