[js] Netscape 4 geeft script error, IE & NS 6 niet

Pagina: 1
Acties:

  • Charango
  • Registratie: Juni 2001
  • Laatst online: 19:11
Ik heb de volgende HTML&Javascript-code, die vlekkeloos werkt in Netscape 6 en IE 5 en 6.
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
<HTML><HEAD><meta ....><TITLE>FOAM</TITLE>
<STYLE TYPE="text/css">#MP3 {position: absolute; left: 270; top: 61}.....</STYLE> 

<script language="JavaScript"><!--

destatus=new Object();
destatus.actief='bla2';
......
image2 = new Image();
image2.src = "MP35.gif";

function over(naam){
      document.images[naam].src=naam+'4.gif';    [deze geeft een error]
}

function uit(naam){
      if (naam == destatus.actief)
      {
      document.images[naam].src=naam+'5.gif';    [deze ook]
      }
      else
      {
      document.images[naam].src=naam+'.gif'    [en deze]
      }
}

function klik(naam){
      document.images[naam].src=naam+'5.gif';        [en deze]
      document.images[destatus.actief].src=destatus.actief+'.gif'    [en tenslotte deze]
      destatus.actief=naam
}

//--></script>
</head>

<body bgcolor="#FFFFFF"><DIV ID="BIO">

<a href="BIO.html" target="main" onMouseOver="over('BIO');" 
onMouseOut="uit('BIO','BIO','BIO.gif');" 
onClick="klik('BIO');">[img]"BIO.gif"[/img]</a>
.....
</DIV></BODY></HTML>

Netscape 4 geeft echter de volgende error:
code:
1
2
3
4
JavaScript Error: http://www.dse.nl/foam/boven2.html, line
44:

document.images[naam] has no properties.

Weet iemand hoe ik dit kan oplossen?
voor de complete site zie http://www.dse.nl/foam

  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 22-06 13:51

Clay

cookie erbij?

Je image zit in een div. dan moet je hem voor Ns4 aanspreken met document.layers['BOI'].document.images['BIO'] en ik zou niet dezelfde ID's gebruiken voor verschillende pagina elementen.

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin


  • Charango
  • Registratie: Juni 2001
  • Laatst online: 19:11
Op vrijdag 21 december 2001 20:29 schreef Clay het volgende:
Je image zit in een div. dan moet je hem voor Ns4 aanspreken met document.layers['BOI'].document.images['BIO']
Geweldig! Het werkt! :)

Maar nu begint Internet Explorer te klagen: :'(
code:
1
2
3
Line:46
Char: 9
Error:'document.layers' is leeg of geen object

En netscape 6 heeft er ook al geen zin meer in. Betekent dat dat ik twee versies moet gaan maken, of zijn er hier nog slimme truuks voor?
en ik zou niet dezelfde ID's gebruiken voor verschillende pagina elementen.
Goede tip, ik heb het al gewijzigd (lokaal).

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 21:24

crisp

Devver

Pixelated

document.layers is idd alleen NS4-. als je echt crossbrowser wil werken zul je dus document.getElementById, document.all en document.layers moeten afvragen...
Lang leve de standaards!

Intentionally left blank