[JS] netscape en div error

Pagina: 1
Acties:

  • mark_gl
  • Registratie: September 2001
  • Laatst online: 30-08 09:45
Ik heb de volgende html code:

<div id="Loading" style="position: static;">Er wordt gezocht ...</div>


Ik roep als ik op een button klik deze functie aan:

function HideLayer() {
if (document.getElementById) { // DOM3 = IE5, NS6
document.getElementById('Loading').style.visibility = "hidden";
}
else {
if (document.layers) { // Netscape 4
document.Loading.visibility = "hidden";
}
else { // IE 4
document.all.Loading.style.visibility = "hidden";
}
}
}

In netscape 4.7 krijg ik dan volgende foutmelding:
"document.Loading has no properties. "

Wat betekent deze foutmelding en hoe los ik dit op?

  • André
  • Registratie: Maart 2002
  • Laatst online: 14:07

André

Analytics dude

code:
1
document.layers.Loading.visibility = "hidden";

Verwijderd

Het ligt gedeeltelijk aan de lelijke notatie dat het niet werkt, en je functie kan efficiënter:

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function hideLayer(layerName)
{
  if (document.getElementById)
  {
    document.getElementById(layerName).style.visibility = "hidden"; 
  } 
  else if (document.layers)
  {
    document.layers[layerName].visibility = "hidden"; 
  } 
  else
  {
    document.all[layerName].style.visibility = "hidden"; 
  } 
} 


Zo kun je hideLayer('Loading'); aanroepen.

De notatie van Yogho werkt wel, maar zal eerder problemen geven dan bijvoorbeeld:
JavaScript:
1
document.layers['Loading'].visibility = "hidden";

  • mark_gl
  • Registratie: September 2001
  • Laatst online: 30-08 09:45
Nou ik heb precies de functie van Cheatah toegepast, maar krijg nog steeds een netscape error. Namelijk: "document.layers.Loading has no properties. "

Verwijderd

bij mij werkt de functie van Cheatah anders prima :
document.layers.Loading
is niet goed moet zijn:
JavaScript:
1
document.layers['Loading']

  • mark_gl
  • Registratie: September 2001
  • Laatst online: 30-08 09:45
Het rare is dat ik ook dit gebruik:

document.layers['Loading']

maar toch die foutmelding krijg, moet ik soms nog properties in de div zelf zetten?

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

Hangloozz

{ @$%&# }

volgens mij moet je aan de DIV meegeven wat de huidige staat is, dus:
code:
1
<div id="Loading" style="position: static;visibility:visible;">

anders weet hij niet wat de property/state van de DIV is bij het omzetten van de visibility...mischien was ie al hidden.

www.jurgroessen.nl


  • mark_gl
  • Registratie: September 2001
  • Laatst online: 30-08 09:45
Heb ik nu ook geprobeerd en nog steeds deze foutmelding: "document.layers.Loading has no properties. "

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

Hangloozz

{ @$%&# }

staat die DIV binnen een andere DIV? dus geneste DIV's?

www.jurgroessen.nl

Pagina: 1