Avatar billede x-man Nybegynder
07. februar 2004 - 01:42 Der er 12 kommentarer og
1 løsning

Indlæsning af en side i en anden ramme

ER der en der kan hjælpe mig med at tyde det her script ?
Jeg har fundet scriptet i "start på JavaScript" hæftet og det skulle gerne kunne åbne en ny side, via en "menu" i en "frameset"

Lige gyldigt hvad jeg gør, sker der mins !!!

jeg har stirret på det her hø i to timer nu og det hjælper heller ikke !


<html>
<title> et eller andet </title>
<head>
 
      <script language=JavaScript>
        sideListe = new Array("","ramme3a.html","ramme3b.thml","ramme3c.html")

        function vaelgIndhold(denneSide) {
                parent.indhold.document.location.href=SideListe[denneSide]
      }

      </script>




</head>
 
     
   

<body>

<h1>Navigationsmenu</h1>
<br>
  <a href="java script:vaelgIndhold(1)"> side 1 </a>
<br>
  <a href="java script:vaelgIndhold(2)"> side 2 </a>
<br>
  <a href="java script:vaelgIndhold(3)"> side 3 </a>

</body>

</html>
Avatar billede grunken Nybegynder
07. februar 2004 - 02:07 #1
sideListe = new Array("","ramme3a.html","ramme3b.thml","ramme3c.html")
bør ændres til:
var sideListe = new Array("","ramme3a.html","ramme3b.thml","ramme3c.html")

nu er vi så sikre på at vi har lavet en variabel :-)

parent.indhold.document.location.href=SideListe[denneSide]
bør ændres til:
parent.indhold.location.href=sideListe[denneSide]

Bemærk at i javascript er der forskel på store og små bogstaver så
SideListe er ikke det samme som sideListe :o)

Sidst men ikke mindst er vi vel helt enige om at du har en frame der hedder indhold ikke ?
Avatar billede roenving Novice
07. februar 2004 - 05:24 #2
-- og tre filer med navnene ramme3a.html, ramme3b.html og ramme3c.html !-)

-- bemærk også, at der var en tavetosse i 3b ...
Avatar billede x-man Nybegynder
07. februar 2004 - 10:00 #3
hey grunken :o)

ja jeg har ændret de ændringer du har skrevet, men der sker ikke rigtigt det helt storre ... det eneske jeg har er en hvid side, med tre links på. Men ingen fremeset, og ingen respons når jeg "klikker" på linkse ... der mangler jo nok et eller andet. Har du tålmodighed ti lat skærre det ud i pap eller "bøje" det i neon ... hvordan ser hele scriptet ud ? ... danner JavaScriptet selv det frameset jeg ikke kan finde, eller skal jeg manuet lave det ? Og hvor skal det så laves henne ?

Jeg er sku lidt blank på den her :o)
Avatar billede roenving Novice
07. februar 2004 - 10:16 #4
Du skal også have en frameset-fil:

<frameset cols="150,*">
  <frame src="dinSideMedLinks.html" name="menu">
  <frame src="ramme3.html" name="indhold">
</frameset>

-- og her har jeg brugt en fjerde side som start i indholds-rammen, men du kan jo tage en af de andre filer ved at tilføje a, b eller c !-)
Avatar billede x-man Nybegynder
07. februar 2004 - 17:28 #5
Skal jeg så have frameset i samme vindue som det ovenstående JavaScript? eller i en seperat fil ?
OG jeg tror at jeg skal have det med skeer :o) ... de tre links der er i scriptet, hvordan sikre jeg mig at de peger på lige den side jeg vil have ?
Avatar billede grunken Nybegynder
07. februar 2004 - 18:22 #6
Bestemt ikke for at være ubehøvlet x-man :o)

men det ville være meget anbefalelsesværdigt hvis du brugte lidt tid på at sætte dig ind i html's struktur inden at du kaster dig over javascript, da det er meget nødvendigt at have denne viden inden :o) (taler af bitter erfaring, eller hvad det hedder)...men for at få det ovenstående fuldendt, skal du lave 5 .html filer

Så jeg laver en hurtig skitse:

1.
"index.html" skal indeholde:
<html>
<head>
<title> et eller andet </title>
</head>
<frameset cols="150,*">
  <frame src="dinSideMedLinks.html" name="menu">
  <frame src="ramme3a.html" name="indhold">
</frameset>
</head>
</html>

2.
"dinSideMedLinks.html" skal indeholde:
<html>
<head>
        <script type="text/javascript">
        var sideListe = new Array("","ramme3a.html","ramme3b.thml","ramme3c.html")

        function vaelgIndhold(denneSide) {
                parent.indhold.location.href=sideListe[denneSide]
      }
      </script>
</head>
<body>
<h1>Navigationsmenu</h1>
<br>
  <a href="java script:vaelgIndhold(1)"> side 1 </a>
<br>
  <a href="java script:vaelgIndhold(2)"> side 2 </a>
<br>
  <a href="java script:vaelgIndhold(3)"> side 3 </a>
</body>
</html>

3.
"ramme3a.html" kunne indeholde:
<html>
<head>
</head>
<body>
  Indhold i lange baner på side3a
</body>
</html>

4.
"ramme3b.html" kunne indeholde:
<html>
<head>
</head>
<body>
  Indhold i lange baner på side3b
</body>
</html>

"ramme3c.html" kunne indeholde:
<html>
<head>
</head>
<body>
  Indhold i lange baner på side3c
</body>
</html>

Ovenstående er kun en hurtig skitse, og det må meget anbefales at du låner noget lekture om emnet, da det at gå igang med javascript for dig lige pt. virker som en stor mundfuld...

Læs evt. nogle bøger om emnet HTML, eller prøv at bruge http://www.html.dk som opslagsværk til at komme i gang med :o)

god arbejdslyst!
Avatar billede x-man Nybegynder
07. februar 2004 - 19:18 #7
hej Grunken

nej det er slet ikke taget ilde op. Jeg har arbejdet ret meget med html i forvejen, kan dog altid blive bedre. Jeg var igang med et hæfte om javascript (du ved dem man kan finde på postuset o.lign.) men lige det her fattede jeg minus af, for der var kun det script, og i følge bogen var det mere end rigeligt. Så tusinde tak for hjælpen. :o)
Avatar billede x-man Nybegynder
07. februar 2004 - 19:38 #8
hey gruken

vil du ikke skrive noget som et svar så du kan få point for det ?
Avatar billede grunken Nybegynder
07. februar 2004 - 19:51 #9
aha, nu er jeg med :o)

tro mig, man skal osse lige vende og dreje nogle scripts før man får fat i den dybere mening med enkelte scripts :o)

Hvis du vil høre min anbefaling så skal rent faktisk starte med at finde en masse forskellige scripts på nettet, disse scripts skal du så kigge på, og underbygge dem vha. en gang lidt bedre lekture end "igang med Javascript", eksempelvis vil jeg anbefale the javascriptbible  :o)

ovenstående problematik kunne være løst på 1000 måder, den vi har fået brygget sammen var 1 :o), så klart der skulle startes et sted !

du kan eks. også lave en iframe, istedet for at lege med et helt frameset

og i en iframe ville du skulle skifte indholdet sådan (hvis vi antager at menuen er på samme side)

<html>
<head>
        <script type="text/javascript">
        var sideListe = new Array("","ramme3a.html","ramme3b.thml","ramme3c.html")

        function vaelgIndhold(denneSide) {
                parent.indhold.location.href=sideListe[denneSide]
      }
      </script>
</head>
<body>
<h1>Navigationsmenu</h1>
<br>
  <a href="java script:vaelgIndhold(1)"> side 1 </a>
<br>
  <a href="java script:vaelgIndhold(2)"> side 2 </a>
<br>
  <a href="java script:vaelgIndhold(3)"> side 3 </a>
</body>
<iframe name="indhold" src="ramme3c.html">
</html>

og vupti, nu ville du have sparet 2 filer på proceduren :o)

Nå nok om det, jeg kaster et svar :o)
Avatar billede grunken Nybegynder
07. februar 2004 - 19:51 #10
altså :/
Avatar billede x-man Nybegynder
07. februar 2004 - 20:00 #11
forresten ... den del af scriptet :

function vaelgIndhold(denneSide) {
                parent.indhold.location.href=sideListe[denneSide]
      }

der hvor der står (denneSide) ... skal det bare være det, eller skal der være et link der ... eller evt stå noget andet ... ?

og ja du har helt ret, det er noget af et eventyr at blive helt gode venner med javascript jeg har kigget på det on / off de sidste 2 år ... men har gået død i latterlige problemstillinger ..

SÅ nu skal det være :o)

endnu engang tusinde tak for hjælpen :o)
Avatar billede grunken Nybegynder
07. februar 2004 - 20:09 #12
denneSide er den varibel, som du angir her : vaelgIndhold(2), her er 2 tallet variablen!

denne variabel bliver så brugt til at hente det respektive nummer ud fra arrayet

så:
parent.indhold.location.href=sideListe[denneSide]

kunne altså omskrives til

parent.indhold.location.href=sideListe[2]

eller

parent.indhold.location.href="ramme3b.html";

Og tro mig, jeg kender til det med at gå død i JS, har personligt fosøgt mig med det i ca. 1½år, og der har osse været en del problemstillinger :o)

men når det sidder, så sidder det der, og så er den eneste barrierre en masse dummefejl :-)

håber du for styr på det, ellers er der altid en masse kompetente mennesker herinde :o)

og tak for points
Avatar billede x-man Nybegynder
07. februar 2004 - 21:27 #13
SÅ nu spiller det tusinde :o)

Naturlig efter jeg lige har fundet en lille stavefejl ;o)
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