toggleVisibility probleem

Praat mee over van alles en nog wat!
Forumregels
Dit forum is voor alle zinnige gesprekken buiten phpBB om. Discussies en gesprekken over interessante onderwerpen.

Een nieuw onderwerp moet..:
  • uiteraard voldoen aan de algemene voorwaarden
  • niet passen in de gewone supportfora
  • interessante zijn voor het overgrote deel van onze gebruikers
  • een neutrale of positieve ondertoon hebben
  • anders zijn dan bestaande onderwerpen
Plaats reactie
Gebruikersavatar
hotrid
Berichten: 452
Lid geworden op: 24 jun 2003, 14:33
Locatie: Almelo
Contacteer:

toggleVisibility probleem

Bericht door hotrid » 22 jan 2005, 16:22

Ik heb een probleem, ik wil namelijk dat een bepaalde tekst weg is, en als je op een bepaalde link/stuk tekst drukt dat die tekst te voorschijnkomt op de pagina. Ik heb het onderstaande gedaan, maar hij werkt niet. Weet iemand waar de fout zit?

In me head :

Code: Selecteer alles

<style type="text/css">
p#visibility { visibility: visible }
p#display { display: none }
</style>

<script type="text/javascript" language="Javascript">
function toggleVisibility() {  
 if( document.getElementById("visibility").style.visibility == "hidden" ) {
    document.getElementById("visibility").style.visibility = "visible";
  } else {
    document.getElementById("visibility").style.visibility = "hidden";
  }
}

function toggleDisplay() {
if( document.getElementById("display").style.display == "none" ) {
    document.getElementById("display").style.display = "block";
  } else {
    document.getElementById("display").style.display = "none"; }
}
</script>
"

in me body

Code: Selecteer alles

<FONT COLOR="navy"><a href="#" "onclick="toggleVisibility()">TIK?</A></FONT><BR>
<p id="display">TEKST</p>

Gebruikersavatar
Bas
Berichten: 2741
Lid geworden op: 02 dec 2003, 17:38
Locatie: Omgeving Goslar (Duitsland)
Contacteer:

Bericht door Bas » 22 jan 2005, 16:25

De a moet id="visibility" krijgen, dat staat in de script...

Gebruikersavatar
Stef
Berichten: 9080
Lid geworden op: 04 jun 2003, 20:47

Bericht door Stef » 22 jan 2005, 16:26

Dan lijkt mij display:hidden logischer.

Gebruikersavatar
hotrid
Berichten: 452
Lid geworden op: 24 jun 2003, 14:33
Locatie: Almelo
Contacteer:

Bericht door hotrid » 22 jan 2005, 16:26

Nee, want de a is de link/tekst waar je op drukt om de tekst te laten verschijnen. Ja display moet anders, maar hij ziet de hele link niet eens

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 22 jan 2005, 16:29

De functie toggleVisibility() gebruik je niet, haal die dus weg. Je verwijst er wel naar, die koppeling moet dus toggleDisplay() worden. Dan klopt het ID met de functie. De tekst zal eerst worden verborgen, als je dat niet wil haal je de stylesheet weg. Die is zoiezo foutief, want de eerste regel achter <style> verwijst naar het ID "visibility", wat niet bestaat.

Gebruikersavatar
hotrid
Berichten: 452
Lid geworden op: 24 jun 2003, 14:33
Locatie: Almelo
Contacteer:

Bericht door hotrid » 22 jan 2005, 16:34

okay. nu wil ik het meerdere malen gebruiken op 1 pagina. Hoe doe ik het dan?

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 22 jan 2005, 16:36

toggleDisplay() een argument mee geven met het id dat je wilt verbergen/showen. Het is een functie, dus de variabele naam plaats je tussen de haakjes () en die gebruik je verder in de fnuctie dan in plaats van "display". Bij het aanroepen ervan geef je dan tussen de haakjes de gewenste naam.

Gebruikersavatar
hotrid
Berichten: 452
Lid geworden op: 24 jun 2003, 14:33
Locatie: Almelo
Contacteer:

Bericht door hotrid » 22 jan 2005, 16:38

Dus ->

Code: Selecteer alles

<a href="#" "onclick="toggleDisplay(2)">KLIK</A><BR>
<p id="2">TEKST</p>
werkt helaas niet.

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 22 jan 2005, 16:41

Niet als je het binnen de functie zelf ook niet aanpast, nee.

Plaats reactie