CSS "protoype" aanpassen.

Status
Niet open voor verdere reacties.

ErikBooy007

Terugkerende gebruiker
Lid geworden
24 mei 2007
Berichten
3.814
Goedeavond,

Is het mogelijk om via JS een CSS class te wijzigen. Dus niet het class attribuut, maar echt de class zelf wijzigen.

Bijvoorbeeld de background color, waardoor alle elementen met die class een andere background color krijgen. Ik snap dat ik met jquery bijvoorbeeld ook heel makkelijk van alle elementen met een class de background kan aanpassen, maar dan pas ik het weer op een lager niveau aan. Plus het feit dat een nieuw element met die class dan nog de oude eigenschappen zou krijgen.

Alvast bedankt!
 
Oef, daar vraag je me wat. Eerlijk gezegd denk ik het niet; JS kan geen files outputten. Wat wel kan, is mischien een omweg:
HTML:
<style id='test'></style>
Als je dan met JS de oude style ophaalt*, deze veranderd en een nieuwe class wegschrijft in d.GEBY('test').innerHTML...

Geen idee of het werkt, maar je weet maar nooit ;)


* ben ook niet echt zeker van hoe je dit (het beste) kan doen...




:thumb:
 
Bedankt voor de tip, dat is wel een goed idee, want ik heb intussen wel iets gevonden, maar ik ben nog aan het kijken in welke mate dit cross-browser is...

Code:
var userule;
var mysheet = document.styleSheets[0];
var firstrule = mysheet.cssRules ? mysheet.cssRules : mysheet.rules;
for ( var i in firstrule ) {
	if(firstrule[i].selectorText.indexOf('.move') > -1 ){
		firstrule[i].style.visibility = (on) ? 'hidden' : 'visible';
		break;
	}
}

In FF werkt het in ieder geval... Toch ook nog maar ff naar jouw oplossing kijken.
 
Hoi,


Ja, ik was dus druk bezig met een voorbeeldje in elkaar hacken, leek een beetje op jouw code. En toen vond ik dit op quirksmode... Niet moeilijk doen dus; gewoon de style regels direct aanpassen -_-


:thumb:
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan