Avatar billede zTopperz Nybegynder
17. april 2010 - 14:50 Der er 6 kommentarer og
1 løsning

Gør så "mainFrame" tjekker om "topFrame" og "leftFrame" er med på siden?

Det er lidt svært at forklarer, men nogle der kender en mulig metode til at gøre følgende..

Jeg har denne side som index.php

<-- Kode Start -->

<html>
<head>
<title>No title</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="origen" content="">
<meta name="author" content="">
<meta name="keywords" content="">
<meta name="description" content="">
</head>
<frameset rows="130,*" frameborder="NO" border="1" framespacing="0" cols="*">
  <frame name="topFrame" scrolling="NO" noresize src="top.htm" frameborder="NO" >
  <frameset cols="110,*" frameborder="NO" border="1" framespacing="0" rows="*">
    <frame name="leftFrame" scrolling="AUTO" src="menu.htm" frameborder="NO" noresize>
    <frame name="mainFrame" src="home.htm" frameborder="NO" scrolling="AUTO" noresize>
  </frameset>
</frameset>
<noframes>
<body>"Your browser doesn't support frames. Get Firefox!"
</body>
</noframes>
</html>

<-- Kode Slut -->

Er det muligt at gøre så hvis man går til home.htm, hvor man normalt kun ville se home.htm.. Er det så muligt at gøre så den tjekker om topFrame og leftFrame også er vist, og hvis ikke.. Skulle den så gerne gøre så de kom frem.. ??

Håber i forstår..
Avatar billede claes57 Ekspert
17. april 2010 - 15:03 #1
i home.htm placerer du lidt kode, som tjekker på, at den kører i frame - og hvis ikke (fx pga dybe link), så reloader den med frames.
Placer den i starten efter <body>

<script type="text/javascript">
  setTimeout ("changePage()", 3000);  //Set the breakout time in milliseconds
  function changePage() {
  if (self.parent.frames.length = 0)
    self.parent.location="http://www.minside.dk/index.php";  //Change the URL to your page
}
</script>

du kan også teste på aktuelt framenavn, så det skal passe med "mainFrame" hos dig.
Avatar billede zTopperz Nybegynder
17. april 2010 - 15:26 #2
claes57 skrev: du kan også teste på aktuelt framenavn, så det skal passe med "mainFrame" hos dig.

Hvad mener du med dette?
Avatar billede claes57 Ekspert
17. april 2010 - 16:00 #3
med
<frameset rows="130,*" frameborder="NO" border="1" framespacing="0" cols="*">
  <frame name="topFrame" scrolling="NO" noresize src="top.htm" frameborder="NO" >
  <frameset cols="110,*" frameborder="NO" border="1" framespacing="0" rows="*">
    <frame name="leftFrame" scrolling="AUTO" src="menu.htm" frameborder="NO" noresize>
    <frame name="mainFrame" src="home.htm" frameborder="NO" scrolling="AUTO" noresize>
  </frameset>
</frameset>
umiddelbart er
topFrame = window.frames(0).name
leftFrame= window.frames(1).name
mainFrame= window.frames(2).name

og det kan du teste på (at de er der alle tre)
if (window.frames(0).name!="topFrame" || window.frames(1).name!="leftFrame" || window.frames(2).name!="mainFrame") {
self.parent.location="http://www.minside.dk/index.php";
}

jeg har ikke testet det - der kan være stavefejl.
Avatar billede zTopperz Nybegynder
17. april 2010 - 16:22 #4
Tak.
Jeg vil tjekke det ud her senerer i dag ;)
Avatar billede zTopperz Nybegynder
07. maj 2010 - 14:07 #5
Det hele virker.. ;)
Tak for hjælpen..
Avatar billede claes57 Ekspert
07. maj 2010 - 17:04 #6
har du overvejet, om det måske var mig, der skulle have point?
Avatar billede zTopperz Nybegynder
07. maj 2010 - 20:22 #7
http://www.eksperten.dk/spm/909073

Undskyld, der er jeg ked af..
Klik linket.. ;)
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