Avatar billede amazon Nybegynder
25. januar 2006 - 12:29 Der er 43 kommentarer og
1 løsning

ForceFrame og andre nødvendige ting

Jeg arbejder i GoLiveCS2 og har i min index-fil en iframe, hvori alle undersiderne vises.
Jeg mener at jeg engang fandt en linje at sætte ind i starten af undersiderne for at sørge for at man straks bliver ledt til hovedsiden, hvis man i f.eks. en søgemaskine fik fat i undersiden.
Når jeg bruger GoLives "TvungenRamme"-værktøj, så laver den en forfærdelig masse snik-snak i en ekstern .js og det mener jeg jo er fuldstændig unødvendigt!

Er der nogen der kan hjælpe mig?

Desuden skal jeg have noget, der sørger for at opdatere siderne hver gang de åbnes, og her har jeg fundet det her:
  <meta http-equiv=\"expires\" content=\"-1\">
  <meta http-equiv=\"pragma\" content=\"no-cache\">
- Vil man ikke også mene, at de er udmærkede?

Er der ellers noget jeg bør huske at have med for at få et velfungerende site?
Avatar billede rowl Nybegynder
25. januar 2006 - 12:34 #1
Er det noget ligende det her: http://www.html.dk/faq/00015/, du søger til dit første spørgsmål?
Avatar billede amazon Nybegynder
25. januar 2006 - 12:50 #2
Ja, det virker ihvertfald fint, og det er jo hovedsagen!
Må vist hellere kikke nærmere på de andre ting på html.dk ...

Du må hellere lægge et svar så du kan få dine points.

Men lige på falderebet: Er ovenstående meta'er den bedste måde at sørge for at en side altid holdes opdateret? Eller har du andre/bedre forslag?
Avatar billede amazon Nybegynder
25. januar 2006 - 12:52 #3
Jeg er så småt begyndt at bruge css til at holde styr på skrifter og farver, men kan man også bruge det til at lægge en overordnet "hold opdateret" og "tving til hovedsiden" i?
Avatar billede amazon Nybegynder
25. januar 2006 - 13:14 #4
Ja okay nu er det jo et javascript, og så laver man selvfølgelig ikke en css-fil men en .js fil med
if( top==self){
top.location="index.htm"
}

og en linje i headafsnittet på siderne med:
<Script Language="javascript" type="text/javascript""text/javascript" src="scripts/forceframe.js"></Script>

Men hvordan gør man så med meta-tingene?
Avatar billede rowl Nybegynder
25. januar 2006 - 13:36 #5
Her er et svar.
Jeg bruger næsten aldrig meta-tags, hvilket nok er en fejl.
Men hvis du vil undgå at folk ser en uopdateret side i deres cache kan det gøres med ASP hvis du koder det?

Response.Expires = -1
Response.AddHeader "pragma", "no-cache"
Response.CacheControl="no-cache"
Response.AddHeader "cache-control", "no-store"

Det minder, som du kan se, en del om dine meta-tags
Avatar billede amazon Nybegynder
25. januar 2006 - 13:40 #6
Nej det dur da ikke! - for så kommer den jo om på velkomst-siden og ikke med visning af den side, som man oprindelig klikkede ind på...

Den skal jo godt nok havne på startsiden (index.htm) men med visning af den aktuelle side i iframen "midtersektion"

Er der en anden løsning?
Avatar billede amazon Nybegynder
25. januar 2006 - 13:48 #7
Hvis jeg skal bruge asp-kode så skal mine filer jo også omdøbes til xxx.asp?

Jeg må indrømme at jeg har lidt svært ved alle de forskellige kodeformer?! Men man skal vel bestemme sig lidt for noget og så holde sig til det?

Har jeg forstået det ret ved at man vælger enten asp eller php og heri kan man stadig bruge sine javascripts og til asp bruger man VBscripts er det ikke korrekt?
Avatar billede olebole Juniormester
25. januar 2006 - 14:13 #8
Avatar billede amazon Nybegynder
25. januar 2006 - 14:21 #9
Prøver det lige i morgen... Bliver desværre nødt til at gå, da det også i dag er moren, der henter børnene i dagpleje!
Avatar billede olebole Juniormester
25. januar 2006 - 22:27 #10
Yups ... det er helt afgjort bedre, du er i de rette rammer, end dine dokumenter er det  ;o)
Avatar billede amazon Nybegynder
27. januar 2006 - 14:23 #11
Nu har jeg været ved at afprøve eksemplet fra dit svar andetsteds, og det virker ikke helt efter hensigten - den havner på indexsiden, men skriver dette i Url-feltet: http://www.minside.dk/?page=testside1/MFBforside3.htm
Sandsynligvis fordi det ikke er indexfilen den skal havne på, men en testside med en iframe i, men hvad er det jeg skal lave om...?

Jeg har sat et script ind på "undersiden" der lyder som følger:
<script type="text/javascript">
    if (top.frames.length==0) top.location = "http://www.minside.dk?page=testside1/MFBforside3.htm";
</script>

...Og på siden med iframen har jeg sat dette script ind:

<script type="text/javascript"><!--
window.onload = function(){
    if (location.search && location.search.indexOf("page=")!=-1) {
        var loc = location.search.split("page=")[1];
        frames.indhold.location.href = loc;
    }
}

//-->
</script>
Avatar billede amazon Nybegynder
27. januar 2006 - 14:26 #12
Jeg er lidt tilbøjelig til bare at bruge GoLives overstrømmende tryk-her-og-vupti-er-der-lavet-en-LANG-række-uforståeligt-men-brugbart-kode-i-en-ekstern-js-fil...
Men jeg mente jo bare, at have set en meget mere simpel måde at gøre det på! - Sådan kan man tit få sig rodet ud i noget fuldstændig unødvendigt noget!

Det er nok også nemmere end at skulle ind og definere stien/filnavn på samtlige undersider?
Avatar billede olebole Juniormester
27. januar 2006 - 15:07 #13
Hmmm ... det virker upåklageligt hos mig - og den skal netop skrive, hvad den gør i adressefeltet  :)

Prøv at teste denne fil (kald den 'test.htm'):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>TITLE</title>
<style type="text/css">
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
}
</style>
<script type="text/JavaScript">
window.onload = function(){
    if (location.search && location.search.indexOf("page=")!=-1) {
        var loc = location.search.split("page=")[1];
        frames.indhold.location.href = loc;
    }
}
</script>
</head>
<body>

<a href="test.htm?page=test.htm">TEST</a>

<iframe name="indhold" src="about:blank"></iframe>

</body>
</html>

Her er det blot et link, der loader siden selv - men resultatet bliver det samme.

Hvis det ikke er index-siden, du skal havne på, skal der i hvertfald stå noget andet i linjen:
    if (top.frames.length==0) top.location = "http://www.minside.dk?page=testside1/MFBforside3.htm";

- i mit første indlæg ... men hvad har jeg ingen anelse om, når jeg ikke kender dit site og ved, hvad der præcist skal ske  :)
Avatar billede olebole Juniormester
27. januar 2006 - 15:21 #14
- derudover behøver du ikke gå ind og hårdkode på alle sider. Du laver bare en .js-fil og skriver dette i den:

    if (top.frames.length==0) top.location = "http://www.minside.dk?page="+location.href;

- så kalder du den 'reloc.js' og importerer den på alle undersider med:

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

Men jeg kan stadig ikke vide, hvorhen brugeren skal sendes, når det ikke er index-siden  :)
Avatar billede amazon Nybegynder
27. januar 2006 - 15:21 #15
Frygtelig, skrækkelig ked af det ... men nu er det galt med børnene igen! - Dagplejen lukker kl. 16 og jeg risikerer, at der sidder et par tvillinger på 2 år og græder hjerteskærende på trappetrinet, hvis ikke jeg når frem inden, og det vil vi jo ikke have!

jeg forsøger med din test igen på mandag ... når det nok ikke i weekenden..!

Men tak for tålmodigheden!
Avatar billede olebole Juniormester
27. januar 2006 - 17:08 #16
Rolig nu! Jeg har selv tre børn, er morfar og skal være farfar til sommer. Du har intet at undskylde, sålænge du prioriterer ungerne højest ... men den hornede tage dig (og det bagfra), hvis du gør det modsatte  ;o)
Avatar billede amazon Nybegynder
30. januar 2006 - 15:08 #17
Nu har jeg prøvet med dine nyeste koder, og jeg må desværre melde, at det stadig ikke virker? Er det noget med at det hele er gemt hen i forskellige undermapper?

Jeg har lavet en reloc.js der indeholder:
if (top.frames.length==0) top.location = "http://www.anjak.dk/testside1/MFBtestside3.htm?page="+location.href;

Og jeg har lavet en henvisning til js i min MFBforside3.htm, som skulle føres over på MFBtestside3.htm, men der sker bare ikke noget?
Koden er placeret i headafsnittet og ser ud som følger:
<script type="text/javascript" src="scripts/reloc.js"></script>


... Og tillykke med din kommende nye farfar-titel ... Der bliver nok mindre tid til at hjælpe sådan nogen som mig fremover, for nu skal du jo være der til at passe syge børn og når forældrene skal til fester og ellers bare generelt skal aflastes... Nej, der bliver nok ikke så meget tid fremover!
Avatar billede amazon Nybegynder
31. januar 2006 - 13:33 #18
OK så har jeg fundet ud af, at jeg ikke skal have hele stien først, men kun selve hjemmesiden. Og resten er efter page=
Det bliver til
if (top.frames.length==0) top.location = "http://www.anjak.dk?page=testside1/MFBtestside3.htm";

Men jeg havner på forsiden med dette i URL-linjen:
http://www.anjak.dk/?page=testside1/MFBtestside3.htm
...Og det passer jo ingen steder, når den side jeg faktisk ser er index-filen?

Hvad er det så, at jeg gør galt nu?


PS. Har også været ved at kikke på din test, og jeg forstår den ikke ..?
Når jeg klikker på knappen test vises siden test.htm i Iframen, og det virker jo...
Men det er jo den anden vej rundt jeg skal bruge det... Når jeg åbner siden MFBforside3.htm skal den åbne MFBtestside3.htm og i Iframen "midtersektion" vise siden MFBforside3.htm, (som var den jeg oprindelig åbnede..!)
Avatar billede amazon Nybegynder
31. januar 2006 - 14:49 #19
Nå, nu er jeg kommet et skridt videre!

Jeg har fået det til at virke så jeg bliver ført fra MFBforside3.htm til MFBtestside3.htm og min reloc-fil indeholder:
    if (top.frames.length==0) top.location = "http://www.anjak.dk/testside1/MFBtestside3.htm?midtersektion=MFBforside3.htm";

... hvordan er det så jeg får den til at sige: "den side jeg står på" i stedet for MFBforside3.htm

???
Avatar billede amazon Nybegynder
31. januar 2006 - 14:51 #20
Ja det er jo nok mere rigtigt at spørge:

... hvordan er det så jeg får den til at sige:  "den side jeg STARTER MED AT GÅ IND på" i stedet for MFBforside3.htm

???
Avatar billede amazon Nybegynder
06. februar 2006 - 10:23 #21
Ja, her hænger jeg jo så...

Vil OleBole eller en anden venlig sjæl hjælpe mig med at gøre den her færdig:

Jeg har fået det til at virke så jeg bliver ført fra MFBforside3.htm til MFBtestside3.htm og min reloc-fil indeholder:
    if (top.frames.length==0) top.location = "http://www.anjak.dk/testside1/MFBtestside3.htm?midtersektion=MFBforside3.htm";

... hvordan er det så jeg får den til at sige:  "den side jeg STARTER MED AT GÅ IND på" i stedet for MFBforside3.htm ???
Avatar billede roenving Novice
07. februar 2006 - 14:45 #22
Du skriver det da bare i filerne !-)

-- eller hiver det ud af urlen ved at splitte på /

var loc = window.location.split("/");
    if (top.frames.length==0) top.location = "http://www.anjak.dk/testside1/MFBtestside3.htm?midtersektion=" + loc[loc.length-1];
Avatar billede amazon Nybegynder
16. juni 2006 - 11:49 #23
Tak for svar! og undskyld forsinkelsen... Smider du et svar?
Avatar billede roenving Novice
25. juli 2006 - 01:00 #24
-- så vent lidt på ole !-)
Avatar billede amazon Nybegynder
25. juli 2006 - 08:45 #25
Gerne, men jeg må i samme åndedrag indrømme, at jeg ikke kan huske en dør om hvad jeg har haft gang i, og desværre er det lidt sort snak, når du siger, at jeg bare kan splitte på et eller andet, når jeg ikke rigtig ved hvad det betyder. Bør nok starte med en basis-børnebog om emnet i stedet..! Havde naivt nok forventet at nogen bare ville sige "du tager den her kode og putter ind her og den her kode og putter ind der. Så er du altid dækket ind, farvel og tak". Det fremgår nok også af det beskedne pointantal!
Desværre kan jeg på nuværende tidspunkt slet ikke finde hverken hoved eller hale i jeres gode råd eller mine egne tilbagemeldinger, så enten dropper jeg frames (hvad mange nok synes er en god idé) eller også lader jeg GoLive lave en en forfærdelig masse unødvendig kode, som også indeholder den nødvendige del, og lader det være ved det.
Under alle omstændigheder: Mange tak for forsøget og tålmodigheden! Og smid gerne svar begge to, så skal jeg nok give jer pointene, for vi kan jo ikke have alle de her uafsluttede spørgsmål stående og flagre!
Avatar billede amazon Nybegynder
25. juli 2006 - 10:56 #26
Nej pokker stå i det om jeg vil opgive det en halv meter inden mållinjen.

Nu har I jo hjulpet mig næsten helt igennem! Vi opsummerer:

Jeg har et frameset her: http://www.anjak.dk/testside1/MFBtestside3.htm
Og så har jeg en håndfuld undersider, der bliver vist i midtersektion, bl.a. http://www.anjak.dk/testside1/MFBforside3.htm



1. På framesettet har jeg føjet følgende javacript i head-sektionen:


        <script type="text/javascript"><!--
window.onload = function(){
    if (location.search && location.search.indexOf("page=")!=-1) {
        var loc = location.search.split("page=")[1];
        frames.indhold.location.href = loc;
    }
}

//-->
</script>


2. Dernæst har jeg føjet denne linje på alle mine undersider, også i head-sektionen:

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



3. Til sidst har jeg lavet min reloc.js fil med følgende indhold:

var loc = window.location.split("/");
    if (top.frames.length==0) top.location = "http://www.anjak.dk/testside1/MFBtestside3.htm?midtersektion=" + loc[loc.length-1];

Og nu er der ingenting, der virker ... next step?
Avatar billede roenving Novice
25. juli 2006 - 11:11 #27
Du søger i koden efter 'page', men skriver i relokationen 'midtersektion=' ...

-- ændr en af dem, så de er ens !-)
Avatar billede amazon Nybegynder
25. juli 2006 - 11:56 #28
Nu siger du nok i koden...

Jeg har på mit frameset nu ændret til dette, men det hjælper ingenting:

        <script type="text/javascript"><!--
window.onload = function(){
    if (location.search && location.search.indexOf("midtersektion=")!=-1) {
        var loc = location.search.split("midtersektion=")[1];
        frames.indhold.location.href = loc;
    }
}

//-->
</script>
Avatar billede amazon Nybegynder
25. juli 2006 - 11:57 #29
relokationen er det der er angivet i min reloc.js ?
Avatar billede amazon Nybegynder
29. august 2006 - 21:17 #30
roenving, jeg har hævet points lidt... Vil du og/eller olebole hjælpe mig igennem det sidste? Eller måske olebole, der fra dette spørgsmål startede og så til nu har nået at blive morfar i mellemtiden! (ak ja, som tiden flyver)

Jeg har også prøvet at sætte relokationen direkte ind på siden, men det virker stadig ikke...
Avatar billede mclemens Nybegynder
16. september 2006 - 01:02 #31
reloc.js:

var loc = window.location.href.split("/");

if(top.frames.length==0)window.location.href="http://www.anjak.dk/testside1/MFBtestside3.htm?midtersektion=" + loc[loc.length-1];'


--------------------------------------------------------------------

script til siden:

<script type="text/javascript">
window.onload = function(){
  var locs=location.search.substr(1).split("&");
  for(i=0,i2=locs.length;i<i2;i++){
    if(locs[i].indexOf("midtersektion=")!=-1){
      var midt=locs[i].split("=");
      midtersektion.location.href="/"+midt[1];
    }
  }
}
</script>
Avatar billede mclemens Nybegynder
16. september 2006 - 01:06 #32
Hov, vi forkorter lige til noget alá den anden kode istedet:

reloc.js:

var loc = window.location.href.split("/");

if(top.frames.length==0)window.location.href="http://www.anjak.dk/testside1/MFBtestside3.htm?midtersektion=" + loc[loc.length-1];'

---------------------------------------------

<script type="text/javascript">
window.onload = function(){
    if (location.search && location.search.indexOf("midtersektion=")!=-1) {
        midtersektion.location.href="./"+location.search.split("midtersektion=")[1];
    }
}
</script>
Avatar billede mclemens Nybegynder
16. september 2006 - 01:07 #33
if (location.search && location.search.indexOf("midtersektion=")!=-1) {
i ovenstående kan også forkortes til:
    if (location.search.indexOf("midtersektion=")!=-1) {
Avatar billede mclemens Nybegynder
16. september 2006 - 01:10 #34
- Rønving havde en smutter i reloc.js,
han havde glemt .href efter location ...

- Ole havde en forkortelse der kunne laves
(sletning af location.search &&) ... koden virkede, men
frames.indhold.location.href skulle på din side
være: midtersektion.indhold.location.href
Avatar billede mclemens Nybegynder
16. september 2006 - 01:13 #35
Vi bør dog nok bruge eventhandlers
idag istedet for window.onload så:


reloc.js:
var loc = window.location.href.split("/");

if(top.frames.length==0)window.location.href="http://www.anjak.dk/testside1/MFBtestside3.htm?midtersektion=" + loc[loc.length-1];'

------------------------------------------------------------------------

<script type="text/javascript">
if(window.addEventListener)window.addEventListener("load", function(){wload();}, false);
else if(window.attachEvent)window.attachEvent("onload", function(){wload();});

function wload(){
    if (location.search.indexOf("midtersektion=")!=-1) {
        midtersektion.location.href="./"+location.search.split("midtersektion=")[1];
    }
}
</script>
Avatar billede mclemens Nybegynder
16. september 2006 - 01:17 #36
Ups, det var min lokale tester ...

reloc.js er god nok, men da testsiden ligger i subdir så
skal vi nok lige have en lille piller i ovenstående ...

--------------------------------------------------------

<script type="text/javascript">
if(window.addEventListener)window.addEventListener("load", function(){wload();}, false);
else if(window.attachEvent)window.attachEvent("onload", function(){wload();});

function wload(){
    if (location.search.indexOf("midtersektion=")!=-1) {
        midtersektion.location.href="http://www.anjak.dk/testside1/"+location.search.split("midtersektion=")[1];
    }
}
</script>


Undskyld at jeg spammer ...
Avatar billede mclemens Nybegynder
16. september 2006 - 01:37 #37
Hmmm, hvis der er flere & 'er efter
midtersektion= skal vi bruge den i 01:02:16...
- Så enten den ovenover med reloc.js i 01:13:54
eller nedenstående med den samme reloc.js fra 01:13:54:


<script type="text/javascript">
if(window.addEventListener)window.addEventListener("load", function(){wload();}, false);
else if(window.attachEvent)window.attachEvent("onload", function(){wload();});

function wload(){
  var locs=location.search.substr(1).split("&");
  for(i=0,i2=locs.length;i<i2;i++){
    if(locs[i].indexOf("midtersektion=")!=-1){
      var midt=locs[i].split("=");
      midtersektion.location.href="http://www.anjak.dk/testside1/"+midt[1];
    }
  }
}
</script>
Avatar billede amazon Nybegynder
16. september 2006 - 16:38 #38
Jamen du styrer jo for vildt! - Og har et godt øje for at spotte tingene. Nu virker det lige præcis som det skal.
Smid svar, så vi kan få afsluttet det her spørgsmål én gang for alle!
Avatar billede mclemens Nybegynder
16. september 2006 - 17:15 #39
Ok, jeg er dog klar på en deler med Ole og Rønving
- men ved dog ikke om de kigger i tråden mere ???

Tror det umiddelbart ikke da  sidste
indlæg fra Rønving var 25/07-2006 11:11:04
- Og det sidste fra Ole var 27/01-2006 17:08:22 ...

... Her er lige mit svar ;)

- Rønving / Ole, prik lige til mig så laver
vi lige en overførsel så vi får en deleren !)

...

Tak for ros :)
Avatar billede mclemens Nybegynder
16. september 2006 - 17:16 #40
((( Edit: en deleren -> en deler )))
Avatar billede amazon Nybegynder
18. september 2006 - 07:31 #41
Nej, de er nok hoppet af den der, men jeg siger alligevel tak til jer alle, og især tak til dig mclemens for at have hjulpet mig gennem det sidste!
Men jeg undrer mig lidt over, at når jeg kommer ind via f.eks. kontakt3.htm så bliver den ved med at stå i url'en når jeg bladrer videre rundt på sitet, er det normalt/meningen? Ikke at det gør noget, når bare man kommer rigtigt ind og rigtigt rundt, men alligevel grund til undren..!
Avatar billede mclemens Nybegynder
18. september 2006 - 08:49 #42
Tak for point :)

[ Men jeg undrer mig lidt over, at når jeg kommer ind via f.eks. kontakt3.htm så bliver den ved med at stå i url'en når jeg bladrer videre rundt på sitet, er det normalt/meningen? ] Yes, sådam er det ved framing sider... Alternativt kan du lave dine links om til noget i denne stil f.eks: <a href="/testside1/MFBtestside3.htm?midtersektion=MFBspecial13.htm">Specialside1</a> ...
Avatar billede amazon Nybegynder
18. september 2006 - 10:10 #43
Ja, det var da en mulighed! Tak, og så må vi hellere få gjort en definitiv ende på denne tråd. Slut herfra!
Avatar billede olebole Juniormester
20. september 2006 - 10:28 #44
Hehe ... helt fint. Jeg er ikke så aktiv for tiden og det er yderst rimeligt, jeg ikke deltager i pointene, når jeg ikke deltager mere i løsningen  ;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