2010-07-28 9 views
2

J'utilise un ajaxtoolkit pour choisir une couleur. Je veux définir la couleur du texte comme l'envers de backcolor.Comment inverser la couleur de fond et la couleur de fond quand l'un d'entre eux change

Si un noir a été choisi comme couleur de fond, alors son couleur correspondante doit être blanche et vice versa.

Je veux le faire avec javascript Retour couleur

<script type="text/javascript"> 
    function colorChanged(sender) { 
//  sender.get_element().style.color = 
//  "#" + sender.get_selectedColor(); 
     sender.get_element().value="#" + sender.get_selectedColor(); 

    } 
</script> 

est en cours fixé par javascript ajax. Quelle couleur a été définie peut être obtenue ci-dessus en utilisant sender.get_selectedColor();. Comment inverser cette couleur. Je pense qu'il peut être possible d'utiliser regex mais ne sais pas comment le faire.

Répondre

2

Vous devez obtenir tous les composés de couleur RRGGBB, revenir, puis recoller:

function numberToHex(nValue, nLength/* =2 */) { 
    var sValue = Math.abs(Math.floor(nValue)).toString(16); 
    if (!nLength) 
     nLength = 2; 
    if (sValue.length < nLength) 
     sValue = Array(nLength + 1 - sValue.length).join('0') + sValue; 
    return sValue; 
}; 

inverted = numberToHex(255 - parseInt(original.substr(0, 2), 16)) 
      + numberToHex(255 - parseInt(original.substr(2, 2), 16)) 
      + numberToHex(255 - parseInt(original.substr(4, 2), 16)); 
+0

@Segey: Solution de Nice, thx –

+0

@Shantanu Gupta Vous êtes les bienvenus –

Questions connexes