JavaScript luistert niet naar voorwaarde

Status
Niet open voor verdere reacties.

javascriptjavas

Nieuwe gebruiker
Lid geworden
22 okt 2008
Berichten
2
Het volgende stukje uit een document:

<script language="javascript" type="text/javascript">
function testwaarleegis() {
if (document.getElementById("le").style.left="0px") {

document.getElementById("lei").style.left="113px"
document.getElementById("omi").style.left="0px"
}
if (document.getElementById("le").style.left="226px") {

document.getElementById("lei").style.left="113px"
document.getElementById("omi").style.left="226px"
}
}
</script>


werkt niet in het hele document. Wat er precies is is wat ingewikkeld, maar het lijkt alsof JavaScript niet luistert naar de voorwaarde die ik stel. Zou het misschien

if (document.getElementById("le").style.left == "226px")

moeten zijn? Dit lijkt namelijk ook niet te werken. Waarom luistert JavaScript niet naar deze voorwaarde? Moet de tweede "if" een "else" zijn? :confused:
 
een voorwaarde moet je stellen met een dubbel 'isgelijkaan' teken.

Ofwel:
PHP:
Als(1 == 1){
    //waar
}

als je een enkele isgelijkaan (=) doet, stel je het gelijk aan elkaar, in plaats van te vergelijken. Bovendien sluit je elke regel af met een puntcomma ( ; ) behalve als het een accolade is (zie hieronder) (heb t wat overzichtelijker gemaakt)

:thumb:




[edit]
jouw script zou dus worden:
PHP:
//javascript


<script language="javascript" type="text/javascript">

function testwaarleegis(){

   if (document.getElementById("le").style.left == "0px") {
      document.getElementById("lei").style.left = "113px";
      document.getElementById("omi").style.left = "0px";
   }

   if (document.getElementById("le").style.left == "226px") {
      document.getElementById("lei").style.left = "113px";
      document.getElementById("omi").style.left = "226px";
   }
}
</script>
[/edit]
 
Laatst bewerkt:
Daarnaast heb je ook geen toegang tot een style property als deze door een extern stylesheet is bepaald.

Als het in de bron met <element style="left: 226px;"> is geregeld, of via Javascript (element.style.left="226px";), dan kun je het wel lezen. Maar heb je dus een stylesheet waarin het bepaald wordt, dan kun je het niet lezen.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan