Étant donné la déclaration suivante:

$('#upLatImb').append('<span style="color:#F62817; text-decoration:blink">' + sprintf("%11.0f",fCargoLatMom).replace(/ /g,'&nbsp;') + '</span');

Je voudrais faire quelque chose comme:

var problemcolor=0xF62817;
$('#upLatImb').append('<span style="color:problemcolor; text-decoration:blink">' + sprintf("%11.0f",fCargoLatMom).replace(/ /g,'&nbsp;') + '</span');

Mais cela entraîne de nombreuses erreurs html.

Je pourrais, bien sûr, faire une recherche et remplacer dans tous les fichiers .js pour changer la couleur, mais je voudrais utiliser des noms logiques si possible et ne changer qu'une seule déclaration par couleur.

Je suis à peine au-dessus du niveau absolu des novices, donc toutes les suggestions sont les bienvenues.

4
Terry 19 nov. 2011 à 07:52

4 réponses

Meilleure réponse

Il semble que vous souhaitiez quelque chose de mémorable pour une utilisation répétitive?

Créez une classe CSS avec la propriété "color: # F62817" et appliquez la classe à la place des styles en ligne, qui ne sont généralement pas préférés.

Donc, votre CSS:

.problemcolor {
    color: #F62817;
}

.blink {
    text-decoration: blink;
}

Et votre jQuery:

$('#upLatImb').append('<span class="problemcolor blink">' + sprintf("%11.0f",fCargoLatMom).replace(/ /g,'&nbsp;') + '</span');

Pas de concaténation ici! Il en résulte un HTML / CSS plus propre et une meilleure pratique, et mémorable, à la fois.

7
Matt 19 nov. 2011 à 03:57

Pensez également aux méthodes jQuery CSS et appendTo.

var problemcolor = '#FFFFFF';
$('<span>Your span</span>').appendTo('3upLatImb').css('color', problemcolor);
1
mrtsherman 19 nov. 2011 à 03:59

Comme ça?

var problemcolor = '#f62817';
$('#upLatImb').append('<span style="color: ' + problemcolor + '; text-decoration:blink">' + sprintf("%11.0f",fCargoLatMom).replace(/ /g,'&nbsp;') + '</span>');
3
Ry- 19 nov. 2011 à 03:56

Vous pouvez concaténer votre chaîne avec quelque chose comme:

var problemcolor=0xF62817;
$('#upLatImb').append('<span style="color:' + problemcolor + '; text-decoration:blink">' + sprintf("%11.0f",fCargoLatMom).replace(/ /g,'&nbsp;') + '</span');
2
talnicolas 19 nov. 2011 à 03:55
8191753