Ik zat eens wat te klooien met JavaScript, en ik probeerde zoiets:

var naam = document.getElementById( div );
naam.eigenschap = "iets";


Dat wil dus niet, maar als ik hetzelfde direct doe:

document.getElementById( div ).eigenschap = "iets";

Werkt het dus wel, wat doe ik fout? ;)
Vreemd genoeg heeft dat met de ; op het einde te maken heb ik zojuist ontdekt.

Vreemd taaltje dat JavaScript ...


Edit: Hoe verander in de waarde van een div met Javascript?

document.getElementById( div ).value & document.getElementById( div ).text werken niet ...
Ik ben ook nOOb met JS, maar ik dacht:

document.getElementById( div ).inner.HTML

of ergens in die buurt (bijvoorbeeld zonder punt tussen inner en HTML
innerHTML zonder punt tussen
Dankje, inderdaad zonder puntje :)
Kan iemand me even uitleggen waarom JavaScript zo'n vreemde scope gebruikt?

Uitleg:
function naam( ) {
var iets = document.getElementById( 'divje' )
iets.eigenschap = "ietsanders"
}

dat werkt zoals het hoort, maar dan:
var iets = document.getElementById( 'divje' )
function naam( ) {
iets.eigenschap = "ietsanders"
}

wil dan weer niet ...
Als je javascript boven je html staat die het beschrijft, hier dus var iets = document.getElementById( 'divje' ) dan geeft het een error dat het dit ding niet kan vinden en niet kan defineren.

Dus eigenlijk zou je dat pas bij onload-event moeten defineren.
om die var door te geven moet je hetzelfde denken als php:

var iets = document.getElementById( 'divje' )
function naam( iets ) {
iets.eigenschap = "ietsanders"
}

volgens mij moet die zo werken :)

Reageren