2011-05-30 23 views
7

Bu gerçekten çok basit, css özelliklerini javascript ile değiştirerek yapabileceğinizi biliyorum;JavaScript onClick değiştir css

document.getElementById('bob').style.background='#000000'; 

Ama bunu yeni öğrendim ki, bunu farklı bir şekilde yapabilir ve birden çok şeyi yapabilirsiniz.

document.getElementById('bob').css='background:#ffffff; color: #000000;'; 

Sorun unutmuş ne kodu, Yani ne temelde ulaşmak istiyoruz yerine ".css" nin gider nedir? Başının üst kısmına ihtiyacım olan kodu bilen var mı? http://jsfiddle.net/YSJfz/

document.getElementById('myDiv').setAttribute('style', 'background: #f00; color: #fff;'); 

Ben, elemanın style niteliğini değiştirmektir do tek şey başarmak için ne anlama geldiğini şudur:

+2

khm ... kütüphaneye? –

+0

nope :(grrrr, aşağı yazmış olmalı –

cevap

19

Sana style

document.getElementById('bob').style.cssText = 'background:#ffffff; color: #000000;'; 

Örnek dan .cssText mülk arıyorsanız tahmin:

+0

Hayat koruyucu :) teşekkürler –

+0

'cssText' çapraz tarayıcı mı? –

+0

@ Šime Vidas: Anlatabildiğim kadarıyla evet! Ancak IE6 ve alttan veya FF <3 hakkında bilmiyorum. – jAndy

7

bu keman göz at?

+0

.cssText daha kolay, ama senin yolun da iyi görünüyor :) –

3

http://jsfiddle.net/Sx5yH/ sana aradığını düşünüyorum Change an element's class with JavaScript olduğunu. Bu şekilde, JavaScript'in kendi stilindeki tüm değişiklikleri değiştirmenize gerek yoktur (bu da kötüdür).

Yani böyle bir CSS sınıfı olacak:

.myClass { 
    background: #ffffff; 
    color: #000000; 
} 

Ve böyle sizin elemana oluştururuz:

document.getElementById("MyElement").className += " myClass"; 
+0

Evet, bunu bu şekilde yapabileceğinizi biliyorum, ama yapmaya çalıştığım şey için .cssText'e ihtiyacım var, ama yine de teşekkürler: D –

2
document.getElementById('bob').style.cssText = 
    'background:#ffffff; color: #000000;'; 
İlgili konular