Foros del Web » Programando para Internet » Javascript »

help

Estas en el tema de help en el foro de Javascript en Foros del Web. Me pasaron este code para unir los marcos de mi sitio y no lo entendi alguno me puede explicar con manzanas ojalá Código del frameset ...
  #1 (permalink)  
Antiguo 23/08/2003, 12:58
Avatar de thrash  
Fecha de Ingreso: marzo-2002
Ubicación: Talca-Chile
Mensajes: 254
Antigüedad: 22 años, 1 mes
Puntos: 1
Pregunta help

Me pasaron este code para unir los marcos de mi sitio y no lo entendi alguno me puede explicar con manzanas ojalá


Código del frameset (estructura de marcos)

<script language="JavaScript">//Evitar páginas fuera de su framevar red = true</script>



Código a colocar en las páginas que deban cargar en el marco principal (excepto la portada por defecto)
<script language="JavaScript">//Evitar páginas fuera de su frameurl=this.location.pathnameif(top==self) top.location="frames.htm?" + url</script>



NOTA: Cambiar frames.htm por el nombre de la página de frames

Código a colocar en la portada (la página especificada en el frameset)
<script language="JavaScript">//Evitar páginas fuera de su frameif(top==self) top.location="frames.htm"if(top.location.search.su bstr(1)!="" && top.red == true){ top.red = false }</script>



NOTA: Cambiar frames.htm por el nombre de la página de frames

Código a colocar en el resto de páginas que carguen por defecto en el frameset (página de menús, cabecera... exceptuando la portada)
<script language="JavaScript">//Evitar páginas fuera de su frameif(top==self) top.location="frames.htm"</script>



NOTA: Cambiar frames.htm por el nombre de la página de frames
__________________
Foro Forestal Maderero
Bosque y +
  #2 (permalink)  
Antiguo 23/08/2003, 13:04
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Dime cual es el nombre de archivo de tu página de frames (la página principal)
  #3 (permalink)  
Antiguo 23/08/2003, 13:49
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Re: help

veo que al copiarlo te lo ha puesto todo en una sola línea. Ha de estar en varias líneas, tal y como se ve en la página.


Mira, en la estructura de marcos (la página de frames, la home) debes poner esto
Cita:
<script language="JavaScript">
var red = true
</script>
En el ejemplo que hay en la página si te fijas hay 3 frames. Arriba, izquierda y portada.

La página de Arriba y de izquierda (la del menú) lleva este código

Cita:
<script language="JavaScript">
//Evitar páginas fuera de su frame
if(top==self) top.location="frames.htm"
</script>
</head>
Debes cambiar frames.html por el nombre de tu página de frames.
Si tu pagina de frames tiene dos frames, uno con menús y otro principal y supongamos que los frames nada más cargar llaman a (suponiendonos) menu.htm y principal.htm. En ese caso este código habrías de colocarlo sólo en menu.htm. En la principal.htm no.





En la página principal (la portada en el ejemplo) hay que poner este código

Cita:
<script language="JavaScript">
//Evitar páginas fuera de su frame
//http://javascript.tunait.com/
if(top==self) top.location="frames.htm"
if(top.location.search.substr(1) != "" && top.red == true)
{
top.red = false
location.href = top.location.search.substr(1)
}

</script>
pero sólo en la portada. cambia frames.htm por el nombre de tu página de frames






finalmente en todas y cada una de las páginas que hayan de cargarse en el marco (frame) principal excepto en la portada debes poner este código
Cita:
<script language="javascript">
//Evitar páginas fuera de su frame
//http://javascript.tunait.com/

url=this.location.pathname
if(top==self) top.location="frames.htm?" + url
</script>
cambiando frames.htm por tu página de frames

Revisa el ejemplo que está colgado y mira el código fuente de todas y cada una de las páginas que componen el ejemplo.

http://javascript.tunait.com/javascr...nasenframe.htm

  #4 (permalink)  
Antiguo 23/08/2003, 14:41
Avatar de thrash  
Fecha de Ingreso: marzo-2002
Ubicación: Talca-Chile
Mensajes: 254
Antigüedad: 22 años, 1 mes
Puntos: 1
Cita:
Mensaje Original por tunait
Dime cual es el nombre de archivo de tu página de frames (la página principal)
el sitio es www.gaf.cl/index.htm

Agradecería me orientases
__________________
Foro Forestal Maderero
Bosque y +
  #5 (permalink)  
Antiguo 23/08/2003, 15:09
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Es facil, tiene la misma estructura que la del ejemplo

mira, en tu página index.htm debes poner esto en el código fuente en head

<script language="JavaScript">
var red = true
</script>

de forma que te quede así
Cita:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>.::Grupo de Acción Forestal::.</title>
<script language="JavaScript">
var red = true
</script>
</head>
Luego a tus páginas arriba.htm y izqu.htm debes ponerle esto en head

<script language="JavaScript">
//Evitar páginas fuera de su frame

if(top==self) top.location="index.htm"
</script>

de forma que te quede algo así

Cita:
en arriba.htm:
<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>www</title>
<base target="contenido">
<script language="JavaScript">
//Evitar páginas fuera de su frame

if(top==self) top.location="index.htm"
</script>
</head>




y en izqu.htm:

<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Inicio</title>
<base target="principal">
<style>
<!--
TD {
FONT-FAMILY: Verdana, Arial, Helvetica; FONT-SIZE: 11px
}
-->
</style>
<script language="JavaScript">
//Evitar páginas fuera de su frame

if(top==self) top.location="index.htm"
</script>
</head>
A la página de nombre centro.htm le pones esto:

<script language="JavaScript">
//Evitar páginas fuera de su frame
//http://javascript.tunait.com/
if(top==self) top.location="index.htm"
if(top.location.search.substr(1) != "" && top.red == true)
{
top.red = false
location.href = top.location.search.substr(1)
}

</script>

de forma que te quede algo así

Cita:
<head>
<meta http-equiv="Content-Language" content="es-mx">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Grupo de Acción Forestal </title>
<base target="_self">

<script language="JavaScript">
//Evitar páginas fuera de su frame
//http://javascript.tunait.com/
if(top==self) top.location="index.htm"
if(top.location.search.substr(1) != "" && top.red == true)
{
top.red = false
location.href = top.location.search.substr(1)
}

</script>
</head>
Finalmente al resto de páginas que hayan de cargarse en el frame principal (ejemplo: socios.htm, afiliacion.htm, noticias.htm etc.), es decir, todas las que deban cargarse en el frame principal (excepto centro.htm que yá lleva otro código) debes poner esto

<script language="javascript">
url=this.location.pathname
if(top==self) top.location="index.htm?" + url
</script>

de forma que te quede algo así

Cita:
<head>
<meta http-equiv="Content-Language" content="es-mx">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Página nueva 0</title>
<style>
<html> <body>
table.MsoNormalTable
{mso-style-parent:"";
font-size:10.0pt;
font-family:"Times New Roman"}
p.MsoNormal
{mso-style-parent:"";
margin-bottom:.0001pt;
font-size:10.0pt;
font-family:Arial;
margin-left:0cm; margin-right:0cm; margin-top:0cm}
p.MsoHeader
{margin-bottom:.0001pt;
tab-stops:center 212.6pt right 425.2pt;
font-size:10.0pt;
font-family:Arial;
margin-left:0cm; margin-right:0cm; margin-top:0cm}
h2
{margin-bottom:.0001pt;
text-align:justify;
line-height:150%;
page-break-after:avoid;
font-size:12.0pt;
font-family:Arial;
font-weight:normal; margin-left:0cm; margin-right:0cm; margin-top:0cm}
h1
{margin-top:0cm;
margin-right:0cm;
margin-bottom:0cm;
margin-left:20.25pt;
margin-bottom:.0001pt;
text-align:right;
page-break-after:avoid;
font-size:10.0pt;
font-family:Arial;
font-style:italic}
h3
{margin-top:0cm;
margin-right:0cm;
margin-bottom:0cm;
margin-left:354.0pt;
margin-bottom:.0001pt;
text-indent:35.4pt;
page-break-after:avoid;
font-size:12.0pt;
font-family:"Times New Roman";
}
table.MsoNormalTable
{mso-style-parent:"";
font-size:10.0pt;
font-family:"Times New Roman"}
INPUT {
BORDER-BOTTOM-COLOR: #000000; BORDER-LEFT-COLOR: #000000; BORDER-RIGHT-COLOR: #000000; BORDER-TOP-COLOR: #000000; COLOR: #000000; FONT-SIZE: 14px; FONT-STYLE: normal; FONT-VARIANT: normal; FONT-WEIGHT: normal; LINE-HEIGHT: normal
}
INPUT {
TEXT-INDENT: 2px
}
INPUT.post {

}
-->
</style>
<base target="_self">

<script language="javascript">
url=this.location.pathname
if(top==self) top.location="index.htm?" + url
</script>

</head>


NOTA: lo que te marqué en negritas en esto último

<html> <body>

Está de más en tu código, deberías quitarlo
  #6 (permalink)  
Antiguo 23/08/2003, 15:23
Avatar de thrash  
Fecha de Ingreso: marzo-2002
Ubicación: Talca-Chile
Mensajes: 254
Antigüedad: 22 años, 1 mes
Puntos: 1
Gracias y porque dices que esto <html> <body> está demás en el code...
__________________
Foro Forestal Maderero
Bosque y +
  #7 (permalink)  
Antiguo 23/08/2003, 15:56
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Está de más en ese úiltimo código que te puse.

Teóricamente te puse el head completo. Dentro de head no puedes tener los tags <html> ni <body>

digamos que los tienes repetidos colados ahí dentro. Es decir, tienes los correctos en su sitio y esos duplicados fuera de lugar.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:31.