2017-03-30 2 views
0
nicht

LaufAFrame Lichtwechsel arbeiten

document.querySelector("[light]").components.light.data.color="#A00";

Hat alles nicht tun, wird es color="#A00" wenn flushToDOM als Attribut hinzufügen, aber nicht das Licht verändern.

Ändern light="color:#BBB" funktioniert von Hand, aber was ist der beste Weg programmgesteuert dies jetzt zu tun?

Antwort

1

Die direkte Änderung des Objekts data wird nicht unterstützt - Sie sollten stattdessen setAttribute verwenden. Beispiel:

var lightEl = document.querySelector('[light]'); 
lightEl.setAttribute('light', {color: '#a00'}); 
+0

Oh mein Gott! Perfekt, ich hatte 'light.setAttribute (" color "," # a00 ")' oder 'setAttribute (" light.color "..' Danke! – msj121

+0

Ah, du warst nah dran! Eine andere Option, die funktioniert, ist 'light.setAttribute ('Licht', 'Farbe', '# a00') '. –