Avatar billede mik789 Nybegynder
10. april 2002 - 19:41 Der er 12 kommentarer og
2 løsninger

forhindre fremmede sider i ens frameset

der er scripts der kan forhindre at ens egen side loades i et fremmed frameset, men hvordan forhindrer man at en fremmed side loader i ens eget frameset? jeg har aldrig set det før, men i dag havde jeg (fra et link på mine egne sider) åbnet et site hvor der i venstre ramme var en række links til andre steder på dette fremmede site. underligt nok åbnede disse sider i mit frameset (i baggrunden) i stedet for i sit eget. ved at se på kilden i den venstre ramme i det fremmede site med linkene kunne jeg se at der ikke var sat noget target, men skulle man så ikke normalt forvente at hans sider så bare ville åbne i hans egen venstre ramme, hvori linkene var placeret???
Avatar billede mik789 Nybegynder
10. april 2002 - 19:44 #1
prøv det evt. selv ved at gå ind på www.dahr.dk (mit site), klik på billedet med buddhistmunkene i venstre ramme (når det vises - det er det andet eller tredje i serien), og klik så på hans danske eller engelske flag. se så om denne side åbner i mit frameset.
Avatar billede annikadk Nybegynder
10. april 2002 - 19:48 #2
det er fordi den anden side der går ind i, har en frame af samme navn som den frame den går ind i på din side - intet  at gøre så vidt jeg ved...
Eneste er at de link du selv laver, er i et nyt frameset eller top, men det ved du jo :)
Avatar billede annikadk Nybegynder
10. april 2002 - 19:48 #3
joew.. det kan så indgåes ved at du omdøber din frame til noget sindssygt ala "wlobrnwdfvoen" - så er den da vist sikret ;)
Avatar billede cdc Novice
10. april 2002 - 20:15 #4
Prøv denne : <script language="JavaScript">
<!--if (self != top) top.location.href = document.location.href;//-->
</script>

/cdc
Avatar billede mik789 Nybegynder
10. april 2002 - 21:58 #5
forstår det ikke: at min hovedramme har samme navn som hans, forklarer vel ikke at hans sider åbner i min hovedramme i stedet for i hans egen, når nu begge sites er åbne. hans sider skal trods alt hoppe ud af deres eget domæne og over i et fremmed. det er da en omvej. men browseren går måske udelukkende efter framenavn? underligt at jeg så ikke har oplevet det før. "main" er trods alt et ret almindeligt navn for en ramme.
Avatar billede jakoba Nybegynder
11. april 2002 - 10:33 #6
Jeg tror 'fejlen' ligger i din funktion newOpen:

// Åbn linkene i nyt vindue
function newOpen() {
  win=window.open(imageURLs[thisImg], "win", "width=700,height=500,toolbar=yes,directories=yes,location=yes,status=yes,menubar=yes,scrollbars=yes,resizable=yes");
  win.focus();
}

første linie opretter en variabel win i sidens window-objekt
linie bruger samtidig navnet "win" som det navn de nyåbnede winduesobjekt skal have.

linien opretter 2 'win' med essentielt samme formål, og så kan IE nok få svært ved at skelne imellem dem.

Prøv at rette koden ovenfor til:

      // Åbn linkene i nyt vindue
var mik789win; // fortæller udtrykkeligt at variablen
              // skal oprettes i vinduets scope.
function newOpen() {
  mik789win=window.open(imageURLs[thisImg], "mik987win", "width=700,height=500,toolbar=yes,directories=yes,location=yes,status=yes,menubar=yes,scrollbars=yes,resizable=yes");
  mik789win.focus();
}

Nu er de to navne forskellige og vi har sikret at navnet mik789win er en vartiable i vinduet og ikke lokal til funktionen som den ellers godt kunne blive.

mvh JakobA
Avatar billede olebole Juniormester
11. april 2002 - 17:43 #7
<ole>
jakoba >> nu vrøvler du da vist  ;o)

Problemet er, at din hovedframe hedder 'main'. Hans hedder 'Main' og burde derfor ikke kunne forveksles ... *men* han kan ikke sdavø og har sat en base-target i sin venstre frame til netop 'main'. Derfor vil siden åbne i den frame, der hedder 'main' ... din hoved-frame.

Hvis folk indså, der ligger 100.000 framesets på WWW med en frame, der hedder 'main' - og begyndte at bruge lidt mere unikke navne - ville problemet ikke eksistere i nær samme omfang.
/mvh
</bole>
Avatar billede olebole Juniormester
11. april 2002 - 17:47 #8
Prøv at omdøbe din 'main' til 'poul_otto_van_der_schwandvogels_ramme' .... så garanterer jeg dig, du ikke løber ind i et lignende problem  ;o)
/mvh
Avatar billede olebole Juniormester
11. april 2002 - 17:54 #9
Hvis du lukker din egen side, når du har pop'et hans op og derefter klikke på flaget, kan du se, hvordan browseren leder efter en frame, der hedder 'main'.
En sådan kan den ikke finde ('naboen' hedder jo netop 'Main' - med stort) og derfor pop'er den nye side op i et nyt vindue.
Inden det sker, har browseren bladret vindues-hierakiet igennem og ledt efter 'main', men ikke fundet den. Havde du ikke lukket dit eget vindue, havde den snuppet din 'main' i stedet  ;o)
/mvh
Avatar billede mik789 Nybegynder
11. april 2002 - 21:08 #10
tak alle sammen, jeg vil prøve
Avatar billede mik789 Nybegynder
11. april 2002 - 21:09 #11
tak allesammen, jeg vil prøve at eksperimentere med det her i weekenden
Avatar billede mik789 Nybegynder
11. april 2002 - 21:25 #12
olebole> ja, du har ret, det kan jeg godt se...
Avatar billede jakoba Nybegynder
11. april 2002 - 21:42 #13
olebole >> ja det var da vrøvl. intet med sagen at gøre. Vil du ha de 7.5?
Avatar billede olebole Juniormester
11. april 2002 - 22:07 #14
Nejnej, Jakob ... det skal zq nok udligne sig i det lange løb. Den slags sker lidt frem og tilbage. *Skal* vi hænge os, kan vi jo ligeså godt bruge et ordentligt reb og ikke hænge os i bagateller  ;o)
/mvh
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