Toon posts:

[NS4 error] document.layers.var has no properties

Pagina: 1
Acties:

Verwijderd

Topicstarter
De bedoeling is dat met deze code een div'je kan worden weergegeven of verstopt (show/hide).

alleen ik krijg telkens de error
---
document.layers.menuDiv1 has no properties.
---

Hij geeft dan de error op dit stukje code
code:
1
2
document.layers['menuDiv1'].captureEvents(Event.MOUSEOUT);
document.layers['menuDiv1'].onmouseout = closePopUp();


Ik heb me rot gezocht maar ben niets tegen gekomen dat me kon helpen :'(


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<html>
<head>
<title>DHTML menu basics</title>
<script type="text/javascript">
function PopUp(){
    if(document.layers) {
        document.layers['menuDiv1'].visibility = "show";
    }
}

function closePopUp(){
        if(document.layers) {
            document.layers['menuDiv1'].visibility = 'hidden';
        }
        
}

//function doAlert () {
//  alert("doAlert!!!");
//} 

if (document.layers) {
document.layers['menuDiv1'].captureEvents(Event.MOUSEOUT);
document.layers['menuDiv1'].onmouseout = closePopUp();
}

</script>
</head>

<body>

<a href="javascript://" onMouseOver="PopUp('menuDiv1')">menuutje2</a>

<div id="menuDiv1"
    style="position:absolute;left:10px;top:35px;width:100px;background-color:#FF0000;visibility:hidden"
    onMouseout="closePopUp()">
optie 1<br>
optie 2<br>
optie 3<br>
optie 4<br>
optie 5<br>
optie 6
</div>

</body>
</html>

  • Nibble
  • Registratie: Juli 2001
  • Laatst online: 12:10
kijk ehm ... dreamweaver kan dit met sleur en pleur toch :P
(weer een rede waarom ik weiger handmatig html te kloppen ;), dan kan ik me op het echte programmeren richten. )

T is for TANK, and T is for TERROR ... and K is the K for KILLING in error.


Verwijderd

Topicstarter
het gaat mij erom, dat ik die error krijg als ik in NS4 een mouseover Event, probeer te capturen....

dit script hierboven is slechts een voorbeeld waarin ik het probleem laat zien...

heb op veel plaatsen gezocht, maar kan nergens achterhalen waar die fout nou vandaan komt.

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 14:06

crisp

Devver

Pixelated

De enige fout die erin zit is dat dit stukje code:
code:
1
2
3
4
if (document.layers) {
document.layers['menuDiv1'].captureEvents(Event.MOUSEOUT);
document.layers['menuDiv1'].onmouseout = closePopUp();
}

al wordt uitgevoerd nog voordat de pagina geheel aangemaakt is. menuDiv1 bestaat dan dus nog niet.
Oplossing: bovenstaande code in een functie zetten die je pas onLoad aanroept :)

O ja, en die () achter closePopUp weghalen :)

Intentionally left blank