Je change la couleur de la bordure d'un objet via une animation:jQuery obtenir nUne erreur lorsque vous essayez de définir la couleur de frontière (mais il fonctionne?)
$listItem.siblings('li').andSelf().find('img').animate({
borderTopColor: defaultThumbBorderColor,
borderBottomColor: defaultThumbBorderColor,
borderLeftColor: defaultThumbBorderColor,
borderRightColor: defaultThumbBorderColor
}, 500);
Dans Firefox, cela fonctionne. Cependant, je reçois cette erreur dans le journal de la console:
Warning: Expected number or percentage in rgb() but found 'NaN'. Error in parsing value for 'border-bottom-color'. Declaration dropped.
Il semble que jQuery veut un certain nombre de ces propriétés. Mais même si je passe une chaîne ('rouge', par exemple) cela fonctionne, mais enregistre cette erreur.
Une idée pourquoi? Question bonus: Je n'arrive pas à appliquer les quatre couleurs de bordure avec une seule ligne via 'borderColor' ou 'border-color'. Est-ce la seule façon de faire cela comme ci-dessus où vous définissez la couleur individuelle de chacun des quatre côtés? Le problème que je rencontre avec ce qui précède est que cela fonctionne habituellement. Mais de temps à autre, il n'anime pas l'une des quatre frontières sur un élément apparemment aléatoire du tableau. Donc, un exemple de scénario: si j'ai 20 éléments, cela va animer les quatre bordures sur 18 des éléments, puis 3 des bordures sur 2 d'entre eux. Si c'est important, j'attache la bordure à une image. Peut-être que c'est le coupable? Je vais faire quelques tests ...
MISE À JOUR ... eh bien, ce n'est pas un problème si c'est spécifiquement une image. Je semble être un pépin de performance (peut-être navigateur? Peut-être jQuery?)
Si j'ai un groupe d'éléments dont j'ai besoin de changer les 4 couleurs de bordure à la fois, la plupart du temps cela fonctionne, mais peut-être 1 de 3 fois, 1 ou 2 des 20 éléments animeront seulement 3 de leurs frontières plutôt que les quatre. À ce stade, je pense que je dois juste remplir les divs et utiliser une couleur d'arrière-plan à la place.
J'utilise animant la couleur intégrée de l'interface utilisateur jQuery (autant que je sache, c'est un ajout plus récent). J'ai fini par renoncer aux animations de la bordure, rembourré la boîte et animé l'arrière-plan. Cela m'a donné un visuel cohérent en ce sens qu'il semblait être une frontière sur les quatre côtés. Cependant, il «oublie» toujours de manière aléatoire d'animer un élément particulier de temps en temps. En tant que tel, j'ai un coffre-fort où après l'animation, je viens de sur-monter le css et le «claquer» en couleur si besoin est. Pas parfait, mais semble fonctionner. Il semble qu'il y ait des problèmes de performances lors de l'animation d'un grand nombre d'éléments en même temps. –