I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Så får du et array, du kan løbe igennem med en for-løkke. Hvis du kun har et stylesheet i dokumentet, kalder du blot:
document.styleSheets[0]
Når du har fat i stylesheet'et, kan du hente alle dets regler med:
var coll = document.styleSheets[0].rules
og løbe det igennem med en for-løkke.
"rules" er et array med en række "item"s, der hver har en "selectorText" - f.eks. 'table' eller '.myClass'. Du kan f.eks. gøre sådan her for at omdefinere table-reglen:
for (i=0; i<coll.length; i++) { if (coll[i].selectorText == 'table') coll[i].style.border = '2px solid red' }
I dit eksempel ovenfor ville du også kunne omdefinere table-reglen med:
men kun fordi du ved, at du kun har et stylesheet, dvs. styleSheets(0), og at table-reglen er den første regel, dvs. rules.item(0). Metoden med for-løkken, hvor du undersøger om selectorText har en bestemt værdi, er mere sikker, hvis du senere tilføjer flere regler i stylesheet'et.
OK - det tror jeg altså ikke kan lade sig gøre?! Men du kan bruge en anden fremgangsmåde. Du kan lave en funktion, der finder alle tabeller og ændrer deres border på denne måde (har ikke lige testet det, men det burde virke):
function changeBorder() { var coll = document.getElementsByTagName('TABLE'); for (i=0; i<coll.length; i++) { switch (coll[i].style.borderWidth) { case null: coll[i].style.border = '1px red solid'; break; case '1px': coll[i].style.borderColor = 'green'; break; //osv. } } }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.