Toon posts:

[js] Plain html combineren met DOM en JS

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo,

misschien in mijn titel een beetje vaag, maar ik zal het verduidelijken.
Ik heb een menuutje gemaakt. Dat wordt geheel gegenereerd via DOM objecten en in een div gezet.

Maar nu wil ik een beetje leuke stijl eraan geven. Deze heb ik mooi getekend en in elkaar gesleurt, gepleurt en "uitgeknipt".

Alleen nu heb probleem: alle methode van de klasses retouneren DOM objecten (gegenereerd via ocument.createElement()).
Nu heb ik mijn menu zo getekend dat ik links en rechts een plaatje heb (rechts komt zowiezo nog een plaatje om duidelijk te maken dat ie uit te vouwen is). In het midden wordt een background plaatjes gebruikt, dat telkens naast elkaar komt te staan.

Nu kan ik dit maken in een html tabelletje of in een paar divjes. Maar dan is het html code. In die code moeten ook nog de parameters inworden gevoerd wie worden mee gegeven.
Ik kan niet de innerHTML zetten van de div, dan krijg ik geen content in de "html".
Het tabelletje of div dingetje helemaal maken via de DOM vind ik een beetje omslachtig en nogal een lap code.

Hoe zou ik dit het beste kunnen aanpakken?

  • disjfa
  • Registratie: April 2001
  • Laatst online: 12-05 15:11

disjfa

be

object = document.createelement() etc

object.className = "de css classe";

En dan kan je in je css al je styles zetten :)

Bijvoorbeeld.

[ Voor 12% gewijzigd door disjfa op 25-08-2004 23:18 ]

disjfa - disj·fa (meneer)
disjfa.nl


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 01:12

crisp

Devver

Pixelated

voor grote lappen code vanuit een string is innerHTML wel het makkelijkst en meestal ook het snelst ipv alle elementen los aanmaken middels createElement. Je zou een mix kunnen gebruiken:
JavaScript:
1
2
3
var newdiv = document.createElement('div');
newdiv.innerHTML = '<b>bold tekst</b>';
document.body.appendChild(newdiv);

zou gewoon moeten werken...

Intentionally left blank