2012-01-18 7 views
0

c'est vraiment simple mais je suis privé de sommeil (nouveau-né) et ne peut pas sembler obtenir ce droit. C'est facile, tout ce que je veux c'est quand on clique sur un div, utilisez jQuery pour obtenir la couleur bg de ce div (var currentColor) et placez-le sur un autre div (aucune relation, pas un enfant parent ou un frère).Transfert de couleur de fond

Voici mon code jquery:

$("#bacon div").click(function(){ 
    var currentColor = $(this).css("background-color"); 
    $("#chosenColor").css("backgroundColor" , "currentColor"); 

}); 

et le violon est ici: http://jsfiddle.net/dYhMp/

Qu'est-ce que je fais mal? Ai-je pris la mauvaise approche ou mon cerveau est-il trop frit pour comprendre ce qui ne se passe pas ici? :)

Répondre

3

Vous avez juste besoin d'enlever les guillemets autour de la seconde "currentColor":

$("#bacon div").click(function(){ 
    var currentColor = $(this).css("background-color"); 
    $("#chosenColor").css("backgroundColor" , currentColor); 
}); 

http://jsfiddle.net/dYhMp/3/

+0

Omg, je savais que c'était parce que mon cerveau était frit, merci :) – Kyle

2

Vous mettez le nom de la variable entre guillemets. Retirez-les:

$("#chosenColor").css("backgroundColor" , currentColor); 
1

currentColor est une variablecontenant une chaîne de couleur. "currentColor" est une chaîne elle-même.

$("#bacon div").click(function(){ 
    var currentColor = $(this).css("background-color"); 
    $("#chosenColor").css("backgroundColor" , currentColor); 
}); 
0

vous avez "currentColor" comme une chaîne, fixer à:

$("#chosenColor").css("backgroundColor" , currentColor); 

:)

0

Retirez les guillemets doubles sur currentColor lors du réglage du css, comme il est une variable. Je l'ai vérifié et cela fonctionne:

$("#bacon div").click(function(){ 
    var currentColor = $(this).css("background-color"); 
    $("#chosenColor").css("backgroundColor" , currentColor); 

});