/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Problemer med include af JavaScript fil
Fra : Belial


Dato : 19-12-04 22:23

Jeg har lavet en side og gjort brug af Dreamweaver dropdown menu funktion.
Menuen er meget omfattende, og kommer således som kode til at fylde enormt
meget på den pågælende side (28K ren menu kode).

Jeg vil derfor gerne smide koden i en seperat fil ("menu.js") og derefter
hente den med <script language="JavaScript" src="menu.js"></script> i <head>
delen. I <body> har Dreamweaver automatisk indsat en <script
language="JavaScript1.2">mmLoadMenus();</script> som henviser til koden i
menu.js.

Jeg får fejlmelding, når jeg prøver at åbne siden efterfølgende ("et tegn
var ventet" - henviser til linien med <script
language="JavaScript1.2">mmLoadMenus();</script>), og jeg forstår ikke helt
hvorfor. Af en eller anden grund forstår mmLoadMenus(); jo angiveligt ikke
at JS filen er includeret, men hvorfor?



 
 
Jens Gyldenkærne Cla~ (19-12-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 19-12-04 22:49

Belial skrev:

> Jeg har lavet en side og gjort brug af Dreamweaver dropdown
> menu funktion. Menuen er meget omfattende, og kommer således
> som kode til at fylde enormt meget på den pågælende side (28K
> ren menu kode).

Hold da op - er det virkelig nødvendigt? Er det en ny udgave af DW
der leverer sådan en monstermenu?


> Jeg vil derfor gerne smide koden i en seperat fil ("menu.js")
> og derefter hente den med <script language="JavaScript"
> src="menu.js"></script>

Det bør være <script type="text/javascript" src="menu.js"></script>
- men det er ikke derfor det ikke virker hos dig.


> I <body> har Dreamweaver automatisk indsat en <script
> language="JavaScript1.2">mmLoadMenus();</script>

Et andet dårligt tegn - det er generelt en dårlig ide at bruge
language-parameteren til script, men det er specielt en dårlig ide
når man specificerer hvilken javascript-version der skal bruges.
Nogle browsere ignorerer det bare, mens andre bruger en gammel
javascriptfortolker (javascript er ved 1.4/1.5 nu).


> Jeg får fejlmelding, når jeg prøver at åbne siden
> efterfølgende ("et tegn var ventet" - henviser til linien med
> <script language="JavaScript1.2">mmLoadMenus();</script>),

Har du et link til siden? Det er lettere at hjælpe på den måde.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Belial (20-12-2004)
Kommentar
Fra : Belial


Dato : 20-12-04 18:28

>> Jeg har lavet en side og gjort brug af Dreamweaver dropdown
>> menu funktion. Menuen er meget omfattende, og kommer således
>> som kode til at fylde enormt meget på den pågælende side (28K
>> ren menu kode).
>
> Hold da op - er det virkelig nødvendigt? Er det en ny udgave af DW
> der leverer sådan en monstermenu?

Det er Dreamweaver MX, så den kan ikke blive nyere. Men menuen har MANGE
indholdspunkter (et sted over 150 underpunkter). Derfor størrelsen...

>> Jeg vil derfor gerne smide koden i en seperat fil ("menu.js")
>> og derefter hente den med <script language="JavaScript"
>> src="menu.js"></script>
>
> Det bør være <script type="text/javascript" src="menu.js"></script>
> - men det er ikke derfor det ikke virker hos dig.

Det har jeg også forsøgt.

>> I <body> har Dreamweaver automatisk indsat en <script
>> language="JavaScript1.2">mmLoadMenus();</script>
>
> Et andet dårligt tegn - det er generelt en dårlig ide at bruge
> language-parameteren til script, men det er specielt en dårlig ide
> når man specificerer hvilken javascript-version der skal bruges.
> Nogle browsere ignorerer det bare, mens andre bruger en gammel
> javascriptfortolker (javascript er ved 1.4/1.5 nu).

Okay. Det er som sagt også noget som Dreamweaver har puttet ind. Vil det
sige det er bedre bare at skrive <script>mmLoadMenus();</script> ??


>> Jeg får fejlmelding, når jeg prøver at åbne siden
>> efterfølgende ("et tegn var ventet" - henviser til linien med
>> <script language="JavaScript1.2">mmLoadMenus();</script>),
>
> Har du et link til siden? Det er lettere at hjælpe på den måde.

Linket er som følger: http://www.lund-visby.dk/projects/test/index2.asp



Benny Nissen (20-12-2004)
Kommentar
Fra : Benny Nissen


Dato : 20-12-04 20:12

Belial explained on 20-12-2004 :

>> Hold da op - er det virkelig nødvendigt? Er det en ny udgave af DW
>> der leverer sådan en monstermenu?
>
> Det er Dreamweaver MX, så den kan ikke blive nyere.

Nu er der jo forskel på MX og MX 2004, så hvilken bruger du ?



--
Benny


Belial (20-12-2004)
Kommentar
Fra : Belial


Dato : 20-12-04 20:22

> Nu er der jo forskel på MX og MX 2004, så hvilken bruger du ?

Ups! Det er MX 2004.



Erik Ginnerskov (20-12-2004)
Kommentar
Fra : Erik Ginnerskov


Dato : 20-12-04 23:58

Belial wrote:

> Okay. Det er som sagt også noget som Dreamweaver har puttet ind. Vil
> det sige det er bedre bare at skrive <script>mmLoadMenus();</script>

Nej, type-attributten er obligatorisk. Den må du ikke slette. Det skal være:

<script type="text/javascript">mmLoadMenus();</script>

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



Belial (21-12-2004)
Kommentar
Fra : Belial


Dato : 21-12-04 07:49


>> Okay. Det er som sagt også noget som Dreamweaver har puttet ind. Vil
>> det sige det er bedre bare at skrive <script>mmLoadMenus();</script>
>
> Nej, type-attributten er obligatorisk. Den må du ikke slette. Det skal
> være:
>
> <script type="text/javascript">mmLoadMenus();</script>

Okay. Tak for det. Har du et bud på hvad problemet så kan være?



Erik Ginnerskov (21-12-2004)
Kommentar
Fra : Erik Ginnerskov


Dato : 21-12-04 21:03

Belial wrote:

> Okay. Tak for det. Har du et bud på hvad problemet så kan være?

Jeg vil ikke bruge tid på en JS-menu, der er genereret i DW. Dels er jeg
ikke javascript-ekspert og dels bruger jeg slet ikke DW.

Men du kan lure på menuen her, den er også lavet i javascript og den
fungerer:

http://hjem.get2net.dk/maj/

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



Per Thomsen (20-12-2004)
Kommentar
Fra : Per Thomsen


Dato : 20-12-04 19:14

Belial wrote:

> Jeg har lavet en side og gjort brug af Dreamweaver dropdown menu funktion.
> Menuen er meget omfattende, og kommer således som kode til at fylde enormt
> meget på den pågælende side (28K ren menu kode).
>
> Jeg vil derfor gerne smide koden i en seperat fil ("menu.js") og derefter
> hente den med <script language="JavaScript" src="menu.js"></script> i <head>
> delen. I <body> har Dreamweaver automatisk indsat en <script
> language="JavaScript1.2">mmLoadMenus();</script> som henviser til koden i
> menu.js.
>
> Jeg får fejlmelding, når jeg prøver at åbne siden efterfølgende ("et tegn
> var ventet" - henviser til linien med <script
> language="JavaScript1.2">mmLoadMenus();</script>), og jeg forstår ikke helt
> hvorfor. Af en eller anden grund forstår mmLoadMenus(); jo angiveligt ikke
> at JS filen er includeret, men hvorfor?
>

Jeg vil gætte på at problemet er at menu.js ikke er hentet endnu, der
hvor "mmLoadMenus" bliver kaldt. For at være sikker på at alt er hentet,
kan du putte kaldet ind i onload event-handleren:

<script type="text/javascript">
window.onload = function() {
mmLoadMenus();
}
</script>


eller bare i body tag'et:
<body onload="mmLoadMenus();"></body>

Jeg kender ikke til Dreamweaver, og ved ikke om det faktisk er
nødvendigt at kalde "mmLoadMenus", mens siden er ved at blive bygget,
men i så fald, kan du vel bare flytte kaldet til allersidst i "menu.js".

MVH Per Thomsen,
http://www.pert.dk/

Belial (20-12-2004)
Kommentar
Fra : Belial


Dato : 20-12-04 20:25

> Jeg vil gætte på at problemet er at menu.js ikke er hentet endnu, der hvor
> "mmLoadMenus" bliver kaldt. For at være sikker på at alt er hentet, kan du
> putte kaldet ind i onload event-handleren:
>
> <script type="text/javascript">
> window.onload = function() {
> mmLoadMenus();
> }
> </script>
>
>
> eller bare i body tag'et:
> <body onload="mmLoadMenus();"></body>

Jeg vil også gætte på, at det er fordi at menu.js ikke er hentet. Jeg har
prøvet at gøre det du anbefaler ovenfor, men med samme fejlmeddelse, hvilket
vel også understøtter mistanken om at menu.js filen ikke bliver hentet. Men
hvorfor?? Det hele er jo sat op som normalt når man vil hente en js fil
ind...



Per Thomsen (20-12-2004)
Kommentar
Fra : Per Thomsen


Dato : 20-12-04 22:03

Belial wrote:
>>Jeg vil gætte på at problemet er at menu.js ikke er hentet endnu, der hvor
>>"mmLoadMenus" bliver kaldt. For at være sikker på at alt er hentet, kan du
>>putte kaldet ind i onload event-handleren:
>>
>><script type="text/javascript">
>>window.onload = function() {
>> mmLoadMenus();
>>}
>></script>
>>
>>
>>eller bare i body tag'et:
>><body onload="mmLoadMenus();"></body>
>
>
> Jeg vil også gætte på, at det er fordi at menu.js ikke er hentet. Jeg har
> prøvet at gøre det du anbefaler ovenfor, men med samme fejlmeddelse, hvilket
> vel også understøtter mistanken om at menu.js filen ikke bliver hentet. Men
> hvorfor?? Det hele er jo sat op som normalt når man vil hente en js fil
> ind...
>
>

Her er hvad Firebirds JavaScript Console siger:

Error: FIND is not defined
Source File: http://www.lund-visby.dk/projects/test/mm_menu.js
Line: 86

Jeg kan dog se at funktionen FIND er defineret umiddelbart før
funktionen writeMenus. Måske er FIND et reserveret ord, prøv at omdøbe
den funktion til noget andet. Husk at ændre alle kaldene til funktionen
også - search-replace er din ven :)

Ellers ved jeg ikke rigtig, hvad der er galt.

MVH Per Thomsen,
http://www.pert.dk/

Tine Müller (30-12-2004)
Kommentar
Fra : Tine Müller


Dato : 30-12-04 13:52

"Belial" skrev
> Jeg har lavet en side og gjort brug af Dreamweaver dropdown menu funktion.
> Menuen er meget omfattende, og kommer således som kode til at fylde enormt
> meget på den pågælende side (28K ren menu kode).
>
> Jeg vil derfor gerne smide koden i en seperat fil ("menu.js") og derefter
> hente den med <script language="JavaScript" src="menu.js"></script> i
<head>
> delen. I <body> har Dreamweaver automatisk indsat en <script
> language="JavaScript1.2">mmLoadMenus();</script> som henviser til koden i
> menu.js.
>
> Jeg får fejlmelding, når jeg prøver at åbne siden efterfølgende ("et tegn
> var ventet" - henviser til linien med <script
> language="JavaScript1.2">mmLoadMenus();</script>), og jeg forstår ikke
helt
> hvorfor. Af en eller anden grund forstår mmLoadMenus(); jo angiveligt ikke
> at JS filen er includeret, men hvorfor?


Måske kan du finde hjælp på denne side
http://www.projectseven.com/extensions/index.htm som har en masse tips om
menuer m.m.

/Tine



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste