J'écris un jquery-plugin, qui modifie une valeur css de certains éléments sur certaines actions utilisateur. Pour les autres actions, la valeur css doit être réinitialisée à sa valeur initiale.
Comme je n'ai trouvé aucun moyen de récupérer les valeurs css initiales, je viens de créer un tableau qui stocke toutes les valeurs initiales au début.
Je l'ai fait avec:
var initialCSSValue = new Array()
tout à fait au début de mon plugin et plus tard, dans une sorte de boucle de configuration où tous mes éléments me accédé je
initialCSSValue[$(this)] = parseInt($(this).css('<CSS-attribute>'));
Cela fonctionne très bien dans Firefox. Cependant, je viens de découvrir que IE (même v8) a des problèmes avec l'accès à la certaine valeur à nouveau en utilisant un autre
initialCSSValue[$(this)]
dans le code. Je pense que cela est dû au fait que j'utilise un objet ($ (this)) comme nom de variable.
Y a-t-il un moyen de contourner ce problème?
Merci
Une chose: Vous êtes instanciation d'un objet 'Array', mais vous ne l'utilisez pas comme' Array'. Vous devriez plutôt utiliser un objet nu. En JavaScript, les tableaux sont indexés par un nombre.Si vous n'indexez pas par un nombre, vous n'utilisez pas de tableau. JavaScript n'est pas un langage prenant en charge les tableaux associatifs. Pour plus d'informations sur ce sujet (la meilleure ressource que j'ai trouvé jusqu'à présent): http://blog.persistent.info/2004/08/javascript-associative-arrays.html –
oui, vous avez raison - moi aussi lire que ce que l'on appelle des tableaux associatifs dans js sont des objets mais pas des tableaux réels. – speendo