🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #11812

Re: Javascript-vraagje

#11812
From: Leen
Date: Tue, 15 Jan 2002 19:05
89 lines
5192 bytes
"Pieter Van Houtte" <pieter.van.houtte.REMOVE@pandora.be> schreef in bericht
news:JI_08.70786$rt4.5075@afrodite.telenet-ops.be...
> Hallo,
>
> 't Zit dus zo:
> Ik wil her en daar in mijn site een link leggen naar ��n bepaalde site.
> Omdat deze link regelmatig zal veranderen, had ik gedacht deze link in een
> txt-file te steken en met een java-script de link uit deze file te halen.
> Dus op iedere pagina waar de link moet komen een javascript dat een string
> uit een txt-bestand haalt.
Moet je met Document.write doen

Voorbeeld: De email link onderaan elke pagina

Wanneer je website uit een hoop paginas bestaat, kan het handig zijn om
stukjes tekst in een extern JavaScript op te slaan. Bijvoorbeeld onderaan
elke pagina bij mij vindt je een email link en de datum waarop de pagina in
aangepast. Ook de inhoudsopgave bovenaan deze pagina heb ik maar een keer
gemaakt en vervolgens in ieder pagina een verwijzing daar naar toe gemaakt.
Ook wijzigen hoeft dus maar op een plaats te gebeuren en het werkt in alle
paginas door.

JavaScript maakt gebruik van de functionaliteiten van de bezoekers
webbrowser dus ook tekst naar het actieve venster schrijven. Dat houdt in
dat we stukken tekst die op meerdere paginas maar een keer hoeven te maken
in een JavaScript bestandje wat we vervolgens oproepen in alle paginas waar
we die tekst maar nodig hebben.
Onderaan zowat iedere pagina (behalve deze JavaScripts) vindt je bij mij een
horizontale lijn, de link naar mijn email pagina en de datum waarop deze het
laatst is gewijzigd. In HTML geschreven zou dat er als volgt uitzien:

<hr width="100%" color="red">
<table width="100%">
<tr>
<td>
<a href=mail.html>Email</a>
</td>
<td align="right" valign="top">
Laatst gewijzigd :
<script language=Javascript>
document.write (document.lastModified)
</script>
</td>
</tr>
</table>
Als ik dan bijvoorbeeld de rode lijn wil veranderen in een blauwe lijn, dan
zou ik dus alle paginas moeten openen en bewerken. Het JavaScript commando
document.write kan ik daarvoor gebruiken vanuit een script bestandje.
Om een JavaScript bestandje te maken heb je een zognaamde platte tekst
editor nodig (geen tekstopmaak) en het meest geschikt is dus NotePad
(Kladblok). Daarin gaan we een JavaScript schrijven echter de aanhef
<script> en de afsluiting </script> laten we daarin weg:

document.write ('<hr width="100%" color="red">')
document.write ('<table width="100%">')
document.write ('<tr>')
document.write ('<td')
document.write ('<a href=mail.html>')
document.write ('Email')
document.write ('</a>')
document.write ('</td>')
document.write ('<td class="changed" align="right" valign="top">')
document.write ('Laatst gewijzigd : ')
document.write (document.lastModified)
document.write ('</td>')
document.write ('</tr>')
document.write ('</table')
HTML en gewone tekst komt dus tussen haakjes en enkele aanhalingstekens.
JavaScript objecten zoals document.LastModified allen tussen haakjes.
Het resultaat slaan we op als een JavaScript bestand: afsluiter.js waar de
extensie .js natuurlijk staat voor JavaScript. Let er bij het opslaan op dat
je het niet opslaat als type Tekstbestand maar als Alle bestanden met het
drop down menu Bestandstype. Doe je dat niet dan wordt het bestand
weggeschreven als afsluiter.js.txt en zul je de naam even moeten wijzigen.

Vervolgens open je de pagina waarin je de afsluiter wilt hebben in HTML
weergave. Op de gewenste plek kun je nu het script aanroepen. Als het in
dezelfde directory (map) staat als de pagina, ziet dat er zo uit:

<SCRIPT LANGUAGE="JavaScript" src="afsluiter.js" type="text/javascript">
</script
Bekijk je in Frontpage nu de pagina in de Normale weergave zul je nog niets
zien, in deze weergave worden scripts niet uitgevoerd. In de
voorbeeldweergave echter wel en je zult dan ook de afsluiter daar wel zien.
Wil je nu de lijn een andere kleur geven, dan hoef je alleen maar
afsluiter.js aan te passen, niet de paginas waar je het script in aanroept.
Een handige mogelijkheid die je behalve als afsluiter voor nog veel meer
kunt gebruiken zoals de inhoudsopgave bovenaan deze pagina.
Technical Details
Message-ID: <a21uhq$k7o$1@nl-news.euro.net>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!news.tele.dk!small.news.tele.dk!195.64.68.27!newsgate.cistron.nl!news2.euro.net!nl-news.euro.net!not-for-mail
References: <JI_08.70786$rt4.5075@afrodite.telenet-ops.be>

Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII
X-Google-Thread: fcea4,fe4db99779506c1e
X-Google-Attributes: gidfcea4,public
X-Google-ArrivalTime: 2002-01-15 11:05:41 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!news.tele.dk!small.news.tele.dk!195.64.68.27!newsgate.cistron.nl!news2.euro.net!nl-news.euro.net!not-for-mail
From: "Leen" <eickhoff@home.nl>
Newsgroups: be.comp.programming
Subject: Re: Javascript-vraagje
Date: Tue, 15 Jan 2002 20:05:32 +0100
Organization: EuroNet Internet
Lines: 92
Message-ID: <a21uhq$k7o$1@nl-news.euro.net>
References: <JI_08.70786$rt4.5075@afrodite.telenet-ops.be>
NNTP-Posting-Host: cc158678-a.hooge1.gr.nl.home.com
X-Trace: nl-news.euro.net 1011121542 20728 213.51.89.119 (15 Jan 2002 19:05:42 GMT)
X-Complaints-To: usenet@nl-news.euro.net
NNTP-Posting-Date: Tue, 15 Jan 2002 19:05:42 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000