Avatar billede jeuann Nybegynder
25. marts 2006 - 10:46 Der er 14 kommentarer og
2 løsninger

Links til frame-side

Hej eksperter!

Jeg håber det er det rigtige sted, ellers må i redirecte mig med et eller andet java-script ;)

Spørgsmålet går på, at jeg har en side, der er bygget op i frames, og så er det dumt når andre linker til den, eller man finder en under-side via google, at den kun viser pågældende side uden framessættet, altså fx. uden "menu", "top"  osv

Jeg har hørt at man kan gøre "et eller andet"  java-script halløj, nogen der kan/vil hjælpe???

/Jeuann
Avatar billede mclemens Nybegynder
25. marts 2006 - 11:11 #1
Sådan her?

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><head><meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><title>Ingen titel</title>

<script type="text/javascript">
<!--
sidenerok="ok";
//-->
</script>

</head><body>

<iframe id="abc" name="abc" src="2.html"></iframe>
<iframe id="def" name="def" src="3.html"></iframe>

</body></html>



2 & 3. html:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><head><meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><title>Ingen titel</title>

<script type="text/javascript">
<!--
if(!parent.sidenerok)location.href="http://www.eksperten.dk";
//-->
</script>

</head><body>

Don't frame my body ;)

</body></html>
Avatar billede jeuann Nybegynder
25. marts 2006 - 11:16 #2
Tak for svar, jeg ved ikke lige om det er det der jeg leder efter, men jeg har fundet en side om emnet, så kan jeg sætte mig lidt bedre ind i hvordan og hvorfor...

http://www.html.dk/artikler/00019/

så jeg lukker spørgsmålet her!
Avatar billede jeuann Nybegynder
25. marts 2006 - 11:17 #3
Du kan få nogle point for hurtigt svar, jeg har ikke undersøgt om dit script virker og svarer til mit spørgsmål/behov,  interesseret????  så smid et svar..
Avatar billede mclemens Nybegynder
25. marts 2006 - 11:26 #4
kast en tier ;)
Avatar billede mclemens Nybegynder
25. marts 2006 - 11:43 #5
p.s. hvis du kombinerer det på den side du kigger på med ovenstående så if(!parent.sidenerok)location.href="http://www.eksperten.dk"; rettes til:

if(!parent.sidenerok)location.href="http://www.dinside.dk?frame1=abc.html&frame2=def.html";

og scriptet til at ændre frame src benyttes kan du sørge for at den frame der åbnes på forsiden sørger for at undersiderne ligges i de rigtige frames så folk ikke skal til at lede efter indholdet...
Avatar billede roenving Novice
25. marts 2006 - 13:27 #6
-- og jeg vil anbefale at bruge en metode som den, jeg selv bruger:

http://roenving.users.whitehat.dk/WD5Opacity.html

Bemærk ændringen i adresselinjen og se kode/forklaring ved at klikke på teksten om framing nede til venstre !-)

Metoden er ikke meget anderledes end den, der er beskrevet i artiklen, du henviser til på html.dk, men den undgår dog den helt forvrøvlede sammenblanding af xhtml og document.write, som jeg absolut kan anbefale, at man undgår (da det simpelthen er ulovlig i xhtml, og altså ikke fremtidssikret !-)
Avatar billede jeuann Nybegynder
25. marts 2006 - 13:55 #7
Roenving

Jeg har også fundet din side frem, den er mere overskuelig som du også selv siger, jeg er bare ikke så stærk i det, så hvis du gider hjælpe en smule?????

Her er framehalløjet jeg bruger og sådan som jeg mener at forstå det skal være:

<html>
  <head>


  <title>xxx.dk</title>

<script language="javascript" type="text/javascript">
  function loadSource(){
  if (location.search!=""){
    src=unescape(location.search.substring(1));
    top.frames['main'].location.href=src;
  }}
</script>

  </head>

<body . . . onload="loadSource();">    (hvor skal den her mere præcist være??)

<frameset rows="40px,*" frameborder="0" border="0" framespacing="0">
<frame src="top1.html" name="top" noresize scrolling=no>
<frameset cols="15%,70%,15%">

<frameset rows="*,115px,152px">
<frame src="menu.html" name="menu" noresize scrolling=no>

<frame src="left4.html" name="left4" noresize scrolling=no>
<frame src="left3.html" name="left3" noresize scrolling=no>
</frameset>

<frame src="main.html" name="main" noresize scrolling=auto>

<frameset rows="*,40px">
<frame src="right11.html" name="right1" noresize scrolling=no>
<frame src="right3.html" name="right3" noresize scrolling=no>


</frameset>
</frameset>

</frameset>
</frameset>

</frameset>
</frameset>

<noframes>

    <p><center><font face="ms serif" size="3" color="#ffffff">Din browser understøtter ikke frames, opdater den hos WINDOWS UPDATE nu!</font></center></p>
  </body>
  </noframes>


</html>



Sidste script følger når vi har styr på det her.....

//Jeuann
Avatar billede roenving Novice
25. marts 2006 - 14:00 #8
Fjern body-tagget, som slet ikke må være udenfor et noframes-tag i et frameset-dokument ...

-- og skriv så funktionen sådan:

<script type="text/javascript">
  window.onload = function(){
  if (location.search!=""){
    src=unescape(location.search.substring(1));
    top.frames['main'].location.href=src;
  }}
</script>
Avatar billede jeuann Nybegynder
25. marts 2006 - 14:05 #9
Så ser det sådan ud......

<html>
  <head>


  <title>xxx.dk</title>

<script type="text/javascript">
  window.onload = function(){
  if (location.search!=""){
    src=unescape(location.search.substring(1));
    top.frames['main'].location.href=src;
  }}
</script>

  </head>


<frameset rows="40px,*" frameborder="0" border="0" framespacing="0">
<frame src="top1.html" name="top" noresize scrolling=no>
<frameset cols="15%,70%,15%">

<frameset rows="*,115px,152px">
<frame src="menu.html" name="menu" noresize scrolling=no>

<frame src="left4.html" name="left4" noresize scrolling=no>
<frame src="left3.html" name="left3" noresize scrolling=no>
</frameset>

<frame src="main.html" name="main" noresize scrolling=auto>

<frameset rows="*,40px">
<frame src="right11.html" name="right1" noresize scrolling=no>
<frame src="right3.html" name="right3" noresize scrolling=no>

</frameset>
</frameset>

</frameset>
</frameset>

</frameset>
</frameset>

<noframes>

    <p><center><font face="ms serif" size="3" color="#ffffff">Din browser understøtter ikke frames, opdater den hos WINDOWS UPDATE nu!</font></center></p>
  </body>
  </noframes>

</html>
Avatar billede jeuann Nybegynder
25. marts 2006 - 14:06 #10
Hvor skal sidste script så hen?


<script language="javascript" type="text/javascript">
  if(top.location==window.location){top.location.replace(top.location.href.substring(0,top.location.href.indexOf(".dk/")+3)+"/index.html?"+escape(location.pathname))}
</script>


ind på hver enkelt "underside" eller ind i de forskellige frames "left4.html"  osv?
Avatar billede roenving Novice
25. marts 2006 - 14:08 #11
Ind i de forskellige undersider, men bemærk kommentaren om domæne, for det kan være du skal opbygge den, så den ikke kigger efter .dk !-)
Avatar billede jeuann Nybegynder
25. marts 2006 - 14:12 #12
mit domæne hedder  .dk  så det tror jeg er iorden ik?
Avatar billede jeuann Nybegynder
25. marts 2006 - 14:14 #13
Jeg tjekker lige om det fungerer, så vender jeg tilbage med spørgsmål eller point ;)

Tak for hjælpen so far.........

/Jeuann
Avatar billede jeuann Nybegynder
25. marts 2006 - 14:16 #14
Hmmm ja det var jo hurtigt klaret, det ser ud til at virke perfekt!!!  Du er for fed til det java-halløj!!!

Hvad vil du have af point??
Avatar billede roenving Novice
25. marts 2006 - 14:17 #15
Tjah, vel det, du vil give !-)

-- for mig ligner det standard medium-sværhedsgrad !o]
Avatar billede jeuann Nybegynder
25. marts 2006 - 14:18 #16
hehe  åbner et point-spørgsmål til dig så,  øjeblik
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