Javascript: Warum gehts nich?

balufreak

balufreak

Aktives Mitglied
Thread Starter
Dabei seit
12.10.2003
Beiträge
1.563
Reaktionspunkte
28
hallo leute!

ich habe folgenden code:
HTML:
<html>
<head>
<title>Test</title>
<script type="text/javascript>
<!--
function Quadrat (bla) {
  document.getElementById("infoBox").visibility = hidden;
}
//-->
</script>
<style type="text/css">
.infoBox {
  position:absolute;
  background-color:#e9e9e9;
  width: 150px;
  left: 50%;
  margin-left: -75px;
  text-align: center;
  height: 60px;
  top: 50%;
  margin-top: -30px;
}
.infoText {
  padding-top: 30px;
}
</style>
</head>
<body>
<div id="infoBox" class="infoBox">
 <div id="infoText" class="infoText">
   <a href="javascript:Quadrat();">Neuer eintrag</a>
 </div>
</div>
</body>
</html>

wenn ich jetzt auf den link klicke, meint die javascript console, dass quadrat() nicht definiert ist?? was habe ich denn falsch gemacht?

greets balu
 
wenn du der Funktion einen Parameter bla gibts, solltest du den vielleicht beim aufrufen auch übergeben. außerdem fehlt nach text/javascript ein "

und das hidden auch in anführungszeichen
außerdem ist es document.getElementById("infoBox").style.visibility="hidden";
du hast das style vergessen

wie viele fehler kann man eigentlich in einer zeile code machen??? :D

bei mir funzt das ganze jetzt mit den änderungen
 
Hallo balu,

pobier's ml mit:
Code:
<script type="text/javascript">
function Quadrat () {
  document.getElementById("infoBox").style.visibility = "hidden";
}
</script>

Stephan
 
Jau du musst hidden quoten, denn das ist ja im Grunde ein String und Strings müßen gequoted werden. Sachen wie xyz.selected = true, kannste getrost ungeqoted lassen, da hier ein Boolean vorliegt. Auch wenn du Typen in JavaScript nicht expliziet angeben musst, so muß dein Ausdruck doch intern ausgewertet werden und nach deiner Schreibweise wäre hidden eine Variable, die in diesem Sichtbarkeitsbereich (der Funktion) nicht existiert.

So viel zur Erklärung...
 
vielen dank!

Jetzt klappt es. es war wirklich nur type="text/javascript"
den rest is mir klar.
vielen Dank!
 
Zurück
Oben Unten