Automatisch alle frames laden na opvragen subframe

Pagina: 1
Acties:
  • 143 views sinds 30-01-2008
  • Reageer

  • RemonDePemon
  • Registratie: Oktober 2002
  • Laatst online: 01-10-2025
Hoi,

Wie kan mij helpen, ik heb een website gebouwd (www.loosdorp.nl).
Op zich leuk en het werkt prima, maar de site bestaat uit een aantal frames.

Wanneer er nu mensen in Google gaan zoeken en op een subframe uitkomen missen ze het menu aan de linker zijde. Ik weet dat er site zijn die dan automatisch alle frames gaan laden zodat de layout van de site weer in orde is.

Is er een script of truuk om dit voor elkaar te krijgen?

Alvast dank,

Remon

Nog 17 jaar tot mijn pensioen


  • André
  • Registratie: Maart 2002
  • Laatst online: 11-02 14:19

André

Analytics dude

Dat noem je een inframe script, zoek maar eens op ;)

  • RemonDePemon
  • Registratie: Oktober 2002
  • Laatst online: 01-10-2025
Dank je, ik ga er direct mee aan de slag.

Heb je misschien een goed voorbeeld voor me?

Nog 17 jaar tot mijn pensioen


  • hing
  • Registratie: Augustus 2002
  • Laatst online: 19-05-2023
Volgens mij kun je iets doen met:

JavaScript:
1
2
3
4
if(top.location!='http://www.loosdorp.nl')
{
 top.location='http://www.loosdorp.nl';
}

erg bruut en ik weer verder niet of dit netjes is

  • André
  • Registratie: Maart 2002
  • Laatst online: 11-02 14:19

André

Analytics dude

hing schreef op vrijdag 11 augustus 2006 @ 11:19:
Volgens mij kun je iets doen met:

JavaScript:
1
2
3
4
if(top.location!='http://www.loosdorp.nl')
{
 top.location='http://www.loosdorp.nl';
}

erg bruut en ik weer verder niet of dit netjes is
Dat noem je cloaking ;) Mensen willen naar bla.html vanuit de zoekmachines, maar krijgen vervolgens de homepage te zien, en dat kan niet.

Even in pseudo code:
JavaScript:
1
2
3
4
if (top.location != 'http://www.loosdorp.nl')
{
  top.location='http://www.loosdorp.nl/inframe.html?page=' + location.href;
}

En dan in je inframe.html:
code:
1
2
3
document.write("<frameset>");
document.write("<frame src='" + location.search.substr(5) + "'>");
document.write("</frameset>");

Zo ongeveer werkt het.

  • RemonDePemon
  • Registratie: Oktober 2002
  • Laatst online: 01-10-2025
Ik zie het al....dit gaat me iets te ver
Moet denk ik toch iemand erbij halen die hier iets meer van weet.

Ik heb nl. geen idee hoe en waar ik dat scipt moet neerzetten.
Op iedere subpagina en waar in de html?

Mis een beetje basiskennis van scripting denk ik, of kan iemand me exact vertellen wat ik in welke pagina moet zetten?

Nog 17 jaar tot mijn pensioen


  • RemonDePemon
  • Registratie: Oktober 2002
  • Laatst online: 01-10-2025
Ik geef een voorbeeld:

Als ik via Google vind: www.loosdorp.nl/kamers.htm
Dan moet hij eigenlijk www.loosdorp.nl/start.htm oproepen met de pagina "kamers.htm" in het frame "MainFrame"

Nog 17 jaar tot mijn pensioen


  • André
  • Registratie: Maart 2002
  • Laatst online: 11-02 14:19

André

Analytics dude

Zet dit in de pagina's die in een frame moeten staan (in kamers.htm dus):
HTML:
1
2
3
4
5
6
<script type="text/javascript">
  if (top.location == location)
  {
    location.href = 'http://www.loosdorp.nl/inframe.html?page=' + location.href;
  }
</script>

Maak daarna een inframe.html aan en zet die op dezelfde plek als start.htm en zet daar het volgende in:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
<script type="text/javascript"> 
  document.write('<frameset border="0" framespacing="0" cols="*,810,*" frameborder="no">');
  document.write('  <frame src="leeg.htm">');
  document.write('  <frameset border="0" framespacing="0" rows="129,*" frameborder="no">');
  document.write('    <frame name="topframe" src="topframe.htm" noresize scrolling="no">');
  document.write('    <frameset border="0" framespacing="0" frameborder="no" cols="181,*">');
  document.write('      <frame name="leftframe" src="leftframe.htm" noResize scrolling="no">');
  document.write('      <frame name="mainframe" src="' + location.search.substr(5) + '">');
  document.write('    </frameset>');
  document.write('  </frameset>');
  document.write('  <frame src="leeg.htm">');
  document.write('</frameset>')
</script>

[ Voor 3% gewijzigd door André op 11-08-2006 12:06 ]


  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

Ik zou nog wel wat met URL-encoding doen en in de index kijken of de search-string wel een geldige waarde bevat om XSS scripting en andere vormen van injection te voorkomen ;)

Intentionally left blank


  • RemonDePemon
  • Registratie: Oktober 2002
  • Laatst online: 01-10-2025
Geweldig!

Dank je, ik ga het vanavond direct proberen.

Remon

Nog 17 jaar tot mijn pensioen

Pagina: 1