Avatar billede nca Juniormester
13. marts 2003 - 18:34 Der er 15 kommentarer og
2 løsninger

Genbrug af javascript

Jeg har ca. 30 sider, hvor jeg benytter det samme javascript. Dette har jeg i øjeblikket kopieret ind på hver side.
Jeg skal nu til at rette dette script på alle siderne og derfor dette spørgsmål:
Er det muligt at placere et javascript i en fil og så henvise til denne fil på de sider, hvor scriptet skal bruges.
Lidt a la cascading style sheet.
Så skal man kun rette ét sted og det vil så afspejle sig på hele seiten
Avatar billede Slettet bruger
13. marts 2003 - 18:37 #1
<html>
<head>
<script src="sti/til/javascript" type="text/javascript">
</script>
</head>
<body>
indhold
</body>
</html>
Avatar billede jakobclausen Nybegynder
13. marts 2003 - 18:37 #2
Du kan lave en .js fil, faktisk på samme måde som en .css fil, hvor du bare skriver java script
Avatar billede grunken Nybegynder
13. marts 2003 - 18:38 #3
kopier det ind i en fil

eks.

javascript.js

og fjern <script> og </script> i filen, hent det derefter på dine sider sådan her :

<script src=javascript.js></script>

-grunken
Avatar billede Slettet bruger
13. marts 2003 - 18:38 #4
Argh da!
Håber du kan se pointen!

<html>
<head>
<script src="sti/til/javascript.js" type="text/javascript">
</script>
</head>
<body>
indhold
</body>
</html>
-------------------------------------------------------------------------
javascript.js
function etellerandet()
{
    //bla bla kode
    return envariabel;
}
Avatar billede henrik_bs Nybegynder
13. marts 2003 - 18:38 #5
Ja det kan man sagtens
placer  dette i sin html fil
<SCRIPT LANGUAGE="JavaScript1.2" SRC="Dato.js"></SCRIPT>

dato.js kunne se sådan ud :
function skriv(tekst){
    document.write(tekst)
}

function opdateringsdato(){
   
    maanedArray = new Array()
    maanedArray[0] = "01"
    maanedArray[1] = "02"
    maanedArray[2] = "03"
    maanedArray[3] = "04"
    maanedArray[4] = "05"
    maanedArray[5] = "06"
    maanedArray[6] = "07"
    maanedArray[7] = "08"
    maanedArray[8] = "09"
    maanedArray[9] = "10"
    maanedArray[10] = "11"
    maanedArray[11] = "12"

    dag = new Date(Date.parse(document.lastModified))

    skriv("Senest opdateret : ")   
    skriv(dag.getDate())
    skriv(".")
    skriv(maanedArray[dag.getMonth()])
    skriv("-")
    skriv(dag.getFullYear())
   
}

mvh
Henrik
Avatar billede henrik_bs Nybegynder
13. marts 2003 - 18:39 #6
skulle have været et svar
Avatar billede =maddog= Nybegynder
13. marts 2003 - 19:28 #7
tre identiske svar :-).
jeg vil ikke gentage men blot minde om at man IKKE må have
<!--
//-->
i en ekstern JS fil.
Avatar billede nca Juniormester
13. marts 2003 - 20:09 #8
Tak for de mange gode og brugbare svar.
Jeg har flyttet nedenstående procedure ud i en selvstændig fil:
-----------------
function overskrift(Tekst)  {
parent.top2.document.open("text/html","replace");
parent.top2.document.write("<html>");
parent.top2.document.write("<head>");
parent.top2.document.write("<LINK REL=stylesheet HREF='../../text_o.css' TYPE='text/css' media='screen'>");
parent.top2.document.write("<title>Automatisk generet overskrift</title>");
parent.top2.document.write("<body topmargin='10'>");
parent.top2.document.write("<p>");
parent.top2.document.write(Tekst);
parent.top2.document.write("</p>");
parent.top2.document.write("</body> </HTML>");
parent.top2.document.close();
}
----------------------
Når proceduren ligger i en selvstændig fil, kan jeg ikke lave en overskrift med mellemrum i.
Jeg laver fx. et kald som dette: overskrift("Dette er en overskrift")
Jeg får en fejlmeddelelse om Strengkonstant ikke afsluttet.
Hvis proceduren er på HTML-siden, er der ingen problem.
Kan I også hjælpe med det?
Avatar billede nca Juniormester
13. marts 2003 - 20:19 #9
>>NB
Ovenstående er ikke helt korrekt.
Når jeg inden fra et andet javascript laver kaldet: overskrift("Dette er en overskrift") går det fint. Skriver jeg den samme kommando ind i fx. OnLoad får jeg fejlen "Strengkonstant ikke afsluttet"
Avatar billede Slettet bruger
14. marts 2003 - 00:00 #10
<body onload="overskrift('Dette er en overskrift');">
Burde ikke give nogle problemer!?
Avatar billede nca Juniormester
14. marts 2003 - 08:04 #11
Tak for hjælpen. Jeg kan godt se, at I har fået alt for få point, men det kan jeg forhåbentligt rette op på en anden gang :-)
Avatar billede jakobclausen Nybegynder
14. marts 2003 - 08:05 #12
Undskyld jeg spøger, men hvad er der i vejen med de udemærkede svar, som du har afvist ??
Avatar billede jakobclausen Nybegynder
14. marts 2003 - 08:06 #13
nca >> Der var mulighed for at forhøje pointsatsen
Avatar billede nca Juniormester
14. marts 2003 - 08:19 #14
>>jakobclausen
Der er intet i vejen med svarene. Jeg forsøgte at dele point ud til alle, men det blev ikke godkendt. Jeg har aldrig prøvet at skulle forhøje pointsatsen. Hvordan gør man det?
Avatar billede jakobclausen Nybegynder
14. marts 2003 - 08:23 #15
Det gør du ved at klikke oppe i højre hjørne ( 15 point fra nca) klik på "15" og du har mulighed for at sige hvormange point du vil afsætte.
Avatar billede nca Juniormester
14. marts 2003 - 08:28 #16
Tak skal du ha'. Det var jeg ikke klar over.
Jeg kender godt fornemmelsen. Man har knoklet for at hjælpe andre, og så er der nogle andre, der får pointene og man synes, at ens svar var mindst lige så godt som det, der fik pointene.
Avatar billede jakobclausen Nybegynder
14. marts 2003 - 08:29 #17
Ahh vi skal nu nok klare os denne gang, synes bare lige at du skulle vide det
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester