Avatar billede homsabu Nybegynder
05. januar 2003 - 17:11 Der er 10 kommentarer og
1 løsning

Et script som Include i PHP

Hej eksperter!
jeg aner ingenting om javascripts, men jeg skal bruge en lille bitte kode...
Scritet skal sådan set bare skrive alt hvad der står i en anden fil på det sted hvor jeg indsætter javascriptet... Scriptet skal ca. gøre som funktionen "Include" gør i php.... Altså inkludere alt hvad der står i den pågældene fil - dvs html koder osv...
hvis i vil være super venlige så skal i skrive scriptet fuldt ud... for jeg fatter intet af det.... altså alt hvad der skal stå mellem <script> og </script>
Avatar billede tangveje Nybegynder
05. januar 2003 - 17:15 #1
Det er desværre ikke muligt med javascript, med mindre den fil du vil inkludere er en javascript fil (altså en fil indeholdende javascript kode og intet andet), hvis det er en lille fil kan du muligvis lave en lille nødløsning, men er det en stor fil vil jeg foreslå dig at finde på noget andet end javascript til den opgave
Avatar billede homsabu Nybegynder
05. januar 2003 - 19:00 #2
hvad gør man så hvis jeg nu laver den fil der skal inkluderes om til en javascript kode?
Avatar billede tangveje Nybegynder
05. januar 2003 - 19:05 #3
Det gør du f.eks. sådan her

Dette er din fil

Linie 1
Linie 2
Linie 3

Det laver du så om til

document.open() ;
document.write('Linie 1') ;
document.write('Linie 2') ;
document.write('Linie 3') ;
document.close() ;

Husk at omdøbe den så den får endelsen .js. Og så inkluderer du det sådan her

<script type="text/javascript" src="din_include_fil.js"></script>

En lidt besværlig måde, men det er den eneste hvis det SKAL være i javascript
Avatar billede Slettet bruger
05. januar 2003 - 19:08 #4
Hvad med at bruge Ekspertens efterhånden udmærkede søgefunktion? Dette spørgsmål har nemlig været oppe 100 gange før. Bl.a. her:
http://www.eksperten.dk/spm/189967
Avatar billede olebole Juniormester
05. januar 2003 - 23:39 #5
<ole>

tangveje >> Det er absolut ikke den eneste, men nok den dårligst performende, du kunne vælge. Den absolut bedste måde er:

var txt = new Array();
txt[0] = "linie 1";
txt[1] = "linie 2";
txt[2] = "linie 3";
document.write( txt.join("\n") );

... og når document.write afvikles under indlæsning af dokumentet, er der ingen grund til at åbne og lukke dokumentet.

homsabu >> Hvad er årsagen til, du afviser tangveje's svar?
Du kunne da ikke vide, det ikke var den bedste metode. Svaret var for så vidt korrekt - uagtet, det kunne gøres bedre og med en anelse mindre redundans.

/mvh
</bole>
Avatar billede tangveje Nybegynder
06. januar 2003 - 01:14 #6
olebole > Godt man kan lære noget nyt en gang imellem :) Hvis man skal være helt fanatisk, skal indholdet af arrayet så ikke slettes efter det er skrevet ud, for det ikke ligger og fylder i hukommelsen, eller sker det automatisk når scriptet er færdigt?

Omkring document.open()/close() troede jeg det var nødvendigt i visse browsere.
Avatar billede olebole Juniormester
06. januar 2003 - 01:26 #7
Jooohhhh ..... det kommer an på, hvor stort array'et er. Nu er det som oftetst på serveren, man støder ind i performance-problemer. De fleste maskiner ude i de tusinde små hjem står jo og strutter af ubrugte Mb Ram og processor-kraft - men i princippet: jo  ;o)

document.open() / -close() er kun nødvendigt ved skrivning, når siden _er_ indlæst. Så hedder det i øvrigt:
  document.open( "text/html", "replace" );
  document.write( "noget" );
  document.close();
... hvis vi nu skal hænge os i detaljen (og det skal vi da ... hehe).

Hvad angår det med at join'e et array, kan denne metode faktisk give en tids-forbedring på over en faktor 100 ...! Ikke så lidt - jeg blev i det mindste _meget_ overrasket, da jeg i sin tid så det  :)
/mvh
Avatar billede tangveje Nybegynder
06. januar 2003 - 04:26 #8
Ja, så blev jeg da godt nok helt klog i dag, det jo ikke hver dag det sker :)

Burde "replace" ikke være "insert" eller noget i den stil... Mener, den skal vel indsætte det i dokumentet, og ikke overskrive eksisterende indhold med det nye? Ville i hvert fald være mest logisk i mine øjne :)
Avatar billede olebole Juniormester
06. januar 2003 - 06:05 #9
Tjaaahhh ... men du kan jo også skrive
  document.body.innerHTML += "Darrvs, du";
uagtet, der ikke står noget HTML i body'en i forvejen ... og man kan vel godt erstatte 'ikke noget' med 'noget'  ;o)

Gid i øvrigt, det var mig, der havde opnået at blive 'helt klog'! Det har jeg zq ventet på i 47 år ... det er ikke rigtig kommet til mig endnu  ;oD
/mvh
Avatar billede tangveje Nybegynder
06. januar 2003 - 16:54 #10
Tja, kan du jo have ret i :)

'Rigtigt klog' bliver man vel aldrig, kommer vel også an på hvad man lægger i ordet 'klog'. man behøver vel ikke vide alt, klogskab handler vel mere om hvor godt man forstår det man ved :)
Avatar billede homsabu Nybegynder
10. juli 2003 - 19:32 #11
lukkes
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

IT-JOB