Toon posts:

[JavaScript] Var doorsturen en gebruiken

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo ik heb een vraag. Ik probeer iets waarvan ik niet zeker weet of het wel kan of niet.

Ik heb een pagina met een link. De link is:

002.htm?s

Op pagina 002.htm gebruik ik het volgende JavaScript om de waarde 's' van de link te krijgen:
code:
1
2
3
4
var _url = location.href;
var _urllen = _url.length;
var _x = _url.indexOf("?");
var _i = _url.substring(_x+1,_urllen);

Dit werkt en 'var _i' is nu 's'.

Nu heb ik een volgend script dat ervoor moet zorgen dat een 'div' op de pagina 'visible' wordt i.p.v. 'hidden'. Ik gebruik daarvoor dit scriptje:
code:
1
2
3
if (document.all) {
    if (_i=='s') eval("document.all.Beeld.style.visibility='visible';");
}

Maar dat werkt dus niet. Maar hoezo niet?

De 'div' ziet er als volgt uit:
code:
1
2
3
4
5
<div id="Beeld" style="Z-INDEX: 10; LEFT: 50px; VISIBILITY:
hidden; WIDTH: 550; POSITION: absolute; TOP: 10px; 
HEIGHT: 410px; background-color: #ffffff;">
Tekst..  
</DIV>

Ik gebruik dat script boven ook met OnClick en OnMouseOver links in de vorm van:
code:
1
2
3
4
5
6
7
8
9
function toggleT(_w,_h) {
  if (document.all) {// is IE
    if (_h=='s') eval("document.all."+_w+".style.visibility='visible';");
    if (_h=='h') eval("document.all."+_w+".style.visibility='hidden';");
  } else {// is NS? -- just guessing for this simple example...
    if (_h=='s') eval("document.layers['"+_w+"'].visibility='show';");
    if (_h=='h') eval("document.layers['"+_w+"'].visibility='hide';");
  }
}

en dat werkt prima. Maar hoezo niet zonder 'function()'? Nu kan je je afvragen hoezo ik een 's' mee stuurt. Nou de als ik dat dus niet doe moet de 'div' gewoon 'invisible' blijven. Ik heb al van alles geprobeert en overal zitten zoeken maar niets werkt dus.. kan iemand mij misschien verder helpen? Alvast reuze bedankt!

Sebastiaan

  • Hangloozz
  • Registratie: Juli 1999
  • Laatst online: 13-07 17:24

Hangloozz

{ @$%&# }

volgens mij hoef je dit niet te evallen:
code:
1
2
3
if (document.all) {
    if (_i=='s') eval("document.all.Beeld.style.visibility='visible';");
}

dus zo:
code:
1
2
3
if (document.all) {
    if (_i=='s') {document.all.Beeld.style.visibility='visible';}
}

daarnaast zou een var met de naamgeving _i best wel eens voor problemen kunnen (gaan) zorgen...

www.jurgroessen.nl


Verwijderd

Topicstarter
Hey mijn fout melding is wel weg maar werken doet het nog niet. Nog andere ideeen?

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 08:42

crisp

Devver

Pixelated

Zit dit geheel in een functie die je onLoad aanroept, of zo in de head? Probeer het 1e eens, dan wordt 'ie pas uitgevoerd als de page volledig gerenderd is (en dus de inline style van je DIV overschreven kan worden).

Intentionally left blank


Verwijderd

Topicstarter
Hey het werkt nu!

Ik heb idd in de body de onLoad functie neergezet en daarmee een functie opgeroepen die alles uitvoert.

En nu werkt het! Toppie! Bedankt!

Verwijderd

code:
1
var _i = location.search.substring(1,location.search.length);

Zou ook moeten werken. Je doet relatief veel moeite om achter de search property (het stuk met het vraagteken achter een URL) te komen.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Blues:
code:
1
var _i = location.search.substring(1,location.search.length);

Zou ook moeten werken. Je doet relatief veel moeite om achter de search property (het stuk met het vraagteken achter een URL) te komen.
* drm wist ook niet dat er iets als een search-property bestond :)

die 's wel chill :D

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1