Avatar billede eazye Nybegynder
13. januar 2004 - 17:22 Der er 12 kommentarer og
2 løsninger

Siden vises kun i iframe når betingelsen er opfyldt

Hey derude.

Jeg vil høre om der er en af jer der har en genial løsning til følgende problem:

Jeg har en iframe på en side, hvori al indhold kommer. Men jeg vil have det sådan, at start.php (som skal vises i iframen) ikke kan vises medmindre den er i iframen.. altså hvis man skriver start.php i adresselinjen?

Det ville også være en mulighed at siden ikke kan vises, med mindre der på adresselinjen står: "http://www.siden.dk/index.php" for på den måde ville start.php ikke kunne stå i adresselinjen?

Nogle der kan løse problemet på en af de 2 måder?

ps. Hvis betingelsen ikke er opfyldt, skal hele siden skifte til index.php

På forhånd tak
- EazyE
Avatar billede skovenborg Nybegynder
13. januar 2004 - 17:37 #1
Hvis din iframe fx hedder "sider", så kan du teste om den ramme eksisterer sådan:
<script type="text/javascript">
  if (!parent.frames['sider']) location.href="index.php";
</script>

Dette skal så placeres i din start.php fil (og andre filer der skal vises i iframen)
Avatar billede thesurfer Nybegynder
13. januar 2004 - 17:38 #2
Put dette i selve iframen:

<script type="text/JavaScript">
if (top.location == document.location) document.location = 'http://www.siden.dk/index.php';
</script>
Avatar billede eazye Nybegynder
13. januar 2004 - 17:39 #3
ok, mange tak.. svar?
Avatar billede thesurfer Nybegynder
13. januar 2004 - 17:39 #4
Skal du ikke lige teste det først? :)
Og hvem skal lægge svar? :)
Avatar billede eazye Nybegynder
13. januar 2004 - 18:09 #5
jo.. men I kunne jo begge lægge et svar, og så skal jeg nok acceptere når jeg har testet igennem :)
Avatar billede thesurfer Nybegynder
13. januar 2004 - 18:12 #6
OK.. her er et svar.. Her er et svar.
Jeg foretrækker at spørgeren altid tester, før der lægges svar.. men sådan er det ikke altid :)

I mit eksempel, behøver din iframe ikke at have hverken navn eller id ;-)
Avatar billede eazye Nybegynder
13. januar 2004 - 18:27 #7
det er også ok.. det er bare fordi jeg desværre ikke har tid til at teste det nu.. så jeg ville bare vente til senere med at acceptere/afvise, så folk ikke behøvede vente på at jeg testede..
Avatar billede skovenborg Nybegynder
13. januar 2004 - 18:33 #8
jeg smider også et - selvom jeg nok også mener at thesurfers er mere enkelt og ligetil. Det var faktisk også det eksempel jeg så i et blad en gang - men har bare glemt det ;-)
Avatar billede thesurfer Nybegynder
13. januar 2004 - 18:54 #9
Der er jo den Eksperten bruger:

if (top.location != self.location) {
top.location.href = self.location;
}

Den betyder "hvis top dokumentet, ikke har samme adresse som dette dokument, skal top dokumentet skifte til dette dokuments adresse"..
Avatar billede thesurfer Nybegynder
13. januar 2004 - 18:55 #10
..de har flyttet koden til http://www.eksperten.dk/js/default.js i stedet for at skrive det i alle dokumenterne..
Avatar billede eazye Nybegynder
13. januar 2004 - 18:59 #11
Yep.. 10-4.. jeg er bare ikke så meget hjemme i javascript, så jeg skulle lige have den der top.location med.. var ikke klar over hvordan det blev skrevet. :)
Avatar billede eazye Nybegynder
13. januar 2004 - 20:43 #12
jeg siger tak.. I kan dele pointene hvis det er ok?
Avatar billede skovenborg Nybegynder
13. januar 2004 - 21:41 #13
tja jeg synes det er meget rimeligt (håber det' iorden med dig thesurfer) ;-)

takker for point :-)
Avatar billede thesurfer Nybegynder
13. januar 2004 - 21:59 #14
Det er helt OK :)
Han kunne jo også bare ha' fået 25 points :)
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