Vinnaren i pepparkakshustävlingen!
2011-01-21, 17:29
  #1
Medlem
Cryxs avatar
Hej, jag undrar hur man kan göra en variabel av en "style='background-color: rgb(255, 255, 255)'" och sen placera den i någon annanstans, t.ex. en alert-funktion bara för att testa. Såhär ser HTML ut ungefär:

HTML-kod:
<input type="text" maxlength="128" name="submitted[farg]" id="edit-submitted-farg" size="60" value="" class="form-text color" style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); " autocomplete="off">

<!-- Jag vill ha stylen i denna nedan --> 
<div class="header" style="variabel här"></div>

Det första input-fältet är alltså ett fält med en jquery colorpicker. Så vad man väljer där vill jag ska placeras in i stylen för header-diven. Det ska agera som nån slags live-ändring av färg.

Såhär långt har jag kommit i jquery:

Kod:
$(document).ready(function () {
    var 
color = $("#edit-submitted-farg").attr("style""background-color"); // Jag vet att detta är helt puckat fel, men jag vill ersätta "background-color" med en variabel på nåt sätt

alert(color);

// Typ nåt sånt här vill jag göra -->

$("#edit-submitted-farg").attr("style", var color background-color); 

Någon javascript-skillad som kan hjälpa mig?
Citera
2011-01-21, 17:54
  #2
Medlem
Tror inte att jag fattar problemet men:

Kod:
var color = 'rgb(255, 255, 255)';

alert(color);

$("#edit-submitted-farg").attr("background-color", color);

??
Citera
2011-01-21, 19:42
  #3
Medlem
herons avatar
HTML-kod:
<input type="text" maxlength="128" name="submitted[farg]" id="edit-submitted-farg" size="60" value="" class="form-text color" style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); " autocomplete="off">

<div class="header" id="pickedcolor" style="width: 20px; height: 20px;"></div><!-- inline css, ajjabajja -->
Kod:
$(document).ready(function () {
    
    $(
"#edit-submitted-farg").bind("change", function() {
    var 
elem = $(this),
        
bgColor elem.val();
        
        $(
"div#pickedcolor").css("background-color"bgColor);
    })
    
}); 
Citera
2011-01-21, 19:45
  #4
Medlem
Miniklass avatar
Citat:
Ursprungligen postat av jkt
Tror inte att jag fattar problemet men:

Kod:
var color = 'rgb(255, 255, 255)';

alert(color);

$("#edit-submitted-farg").attr("background-color", color);

??

Eftersom att background-color inte är ett attribut, utan en style, så använder du .css funktionen för att ändra/extrahera den

like this:
Kod:
// Ta background-color från ett element
var color = $("#id").css("background-color");

alert(color);

// Ändra background-color på ett annat element
$("#id2").css("background-color"color); 

edit: heron hann före =)
Citera
2011-01-23, 02:23
  #5
Medlem
Selfclear...ni har så rätt...css istf för attr såklart. Tror jag blev fintad av TS första inlägg.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback