login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[JS]Return van hash (Opgelost)

Offline valles10 - 25/05/2011 11:50
Avatar van valles10HTML interesse Ik heb het volgende:
  1. function visible_toggle(id){
  2. var docID = document.getElementById(id);
  3. if(docID.style.display == "block")
  4. docID.style.display = "none";
  5. else
  6. docID.style.display = "block";
  7. }
  8. var hash = self.document.location.hash.substring(1);
  9. document.writeln(hash);
  10. visible_toggle(hash);

Wat ik dus wil doen is als er een hashtag is megegeven, moet hij het element met dat ID openen. (#hash, dan moet div id="hash" openen). De bovenstaande code moet in mijn ogen kloppen, als ik gewoon visible_toggle('hash') doe, werkt het wel.

Ik heb vervolgens ook al het volgende geprobeert:
  1. var hash = self.document.location.hash.substring(1);
  2. document.getElementById(hash).docID.style.display = "block";

maar dat werkt ook niet. Nu heb ik zitten denken:
is de return van de hashtag die ik uit var hash krijg, geen string?
of doe ik gwn iets verkeerd? zie ik iets over het hoofd?

3 antwoorden

Gesponsorde links
Offline vinTage - 25/05/2011 21:17 (laatste wijziging 26/05/2011 01:13)
Avatar van vinTage Nieuw lid
  1. alert(self.document.location.hash.substring(1)) //leeg

Als je je hash alert, zie je dat er een lege alert komt met juw scriptje, deze doet het wel (in mn testding iig)

  1. alert(self.document.location.hash)


edit, stom van me, had geen hash geset in mn eerste testje, jouwe alert wel 

edit2:
Dit werkt ongeveer wel, aleen als je klikt sluiten de 'overige' niet, daarvoor moet je een functie bij inbouwen die checked op className om eerst alles dicht te gooien behalve 'id'

  1. <style type="text/css">
  2. .default_weg{display:none}
  3. </style>
  4.  
  5.  
  6. <a href="#div1" onclick="visible_toggle('div1')">klik voor div 1</a>
  7. <br />
  8. <div id="div1" class="default_weg">
  9. text van div 1
  10. </div>
  11.  
  12. <a href="#div2" onclick="visible_toggle('div2')">klik voor div 2</a>
  13. <br />
  14. <div id="div2" class="default_weg">
  15. text van div 2
  16. </div>
  17.  
  18. <a href="#div3" onclick="visible_toggle('div3')">klik voor div 3</a>
  19. <br />
  20. <div id="div3" class="default_weg">
  21. text van div 3
  22. </div>
  23.  
  24. <script language="javascript">
  25. function visible_toggle(id){
  26. if(document.getElementById(id).style.display == "block")
  27. document.getElementById(id).style.display = "none";
  28. else
  29. document.getElementById(id).style.display = "block";
  30. }
  31.  
  32. if(self.document.location.hash.substring(1) != '')
  33. {
  34. visible_toggle(self.document.location.hash.substring(1));
  35. }
  36. </script>
Offline valles10 - 26/05/2011 12:24
Avatar van valles10 HTML interesse Dat van jou bij edit2 werkt idd, maar wat is er dan anders met dat van mij? dat ik het in een var zet? of omdat ik die if(self.doc....) niet heb?
Offline vinTage - 26/05/2011 12:48
Avatar van vinTage Nieuw lid jij checked niet of er een hash geset is (in je onload bv)
Bedankt door: valles10
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.177s