Foros del Web » Creando para Internet » Herramientas y Software »

llamando iframe desde menú (dreamweaber)

Estas en el tema de llamando iframe desde menú (dreamweaber) en el foro de Herramientas y Software en Foros del Web. Hola a todos. Llevo días peleándome con el código de una página que estoy editando con el dreamweaber sin éxito. No es la primera vez ...
  #1 (permalink)  
Antiguo 13/04/2007, 02:11
Avatar de acidia  
Fecha de Ingreso: abril-2007
Mensajes: 5
Antigüedad: 17 años, 7 meses
Puntos: 0
llamando iframe desde menú (dreamweaber)

Hola a todos. Llevo días peleándome con el código de una página que estoy editando con el dreamweaber sin éxito. No es la primera vez que diseño una página de este tipo sin problemas, me bastaba con poner las targetas target="contentframe" en cada enlace del menú para que todo cargase en el iframe de turno... pero esta vez quise ser algo más profesional, así que edité el menú desde el dreamweaber. A primera vista está muy bien pero luego no consigo que funcione. He estado buscando en google e incluso e añadido una función para obligar a los enlaces a abrir en el iframe pero sigo igual, estoy ya cansada, cabreada y algo desesperada y cada día que intento resolverlo acabo dejándolo por imposible . Espero que alguno de vosotros pueda ayudarme. Os dejo aquí las partes del código relativas al menú y al iframe y a ver si encontrais el fallo:

Esto va entre las etiquetas del head, es la función que enconé googleando para obligar al iframe a abrir en el menú:

<script language="JavaScript">
<!--
function getKeys()
{
var keys = new Object();
var queryString = location.search.substring(1);
var keyPairs = queryString.split("&");

for(var i = 0; i < keyPairs.length; i++)
{
var position = keyPairs[i].indexOf('=');
if (position == -1) continue;

var keyname = keyPairs[i].substring(0, position );

var keyvalue = keyPairs[i].substring(position + 1);
keys[keyname] = unescape(keyvalue);
}
return keys;

}

Justo a continuación va la función que carga las imágenes del menú:

function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_nbGroup(event, grpName) { //v3.0
var i,img,nbArr,args=MM_nbGroup.arguments;
if (event == "init" && args.length > 2) {
if ((img = MM_findObj(args[2])) != null && !img.MM_init) {
img.MM_init = true; img.MM_up = args[3]; img.MM_dn = img.src;
if ((nbArr = document[grpName]) == null) nbArr = document[grpName] = new Array();
nbArr[nbArr.length] = img;
for (i=4; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
if (!img.MM_up) img.MM_up = img.src;
img.src = img.MM_dn = args[i+1];
nbArr[nbArr.length] = img;
} }
} else if (event == "over") {
document.MM_nbOver = nbArr = new Array();
for (i=1; i < args.length-1; i+=3) if ((img = MM_findObj(args[i])) != null) {
if (!img.MM_up) img.MM_up = img.src;
img.src = (img.MM_dn && args[i+2]) ? args[i+2] : args[i+1];
nbArr[nbArr.length] = img;
}
} else if (event == "out" ) {
for (i=0; i < document.MM_nbOver.length; i++) {
img = document.MM_nbOver[i]; img.src = (img.MM_dn) ? img.MM_dn : img.MM_up; }
} else if (event == "down") {
if ((nbArr = document[grpName]) != null)
for (i=0; i < nbArr.length; i++) { img=nbArr[i]; img.src = img.MM_up; img.MM_dn = 0; }
document[grpName] = nbArr = new Array();
for (i=2; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
if (!img.MM_up) img.MM_up = img.src;
img.src = img.MM_dn = args[i+1];
nbArr[nbArr.length] = img;
} }
}
//-->
</script>

En la etiqueta de body va el resto:

<body onLoad="updateFrame();MM_preloadImages('../pics/noticias.gif','../pics/noticiaslink.gif','../pics/bio.gif','../pics/biolink.gif','../pics/america.gif','../pics/americalink.gif','../pics/alicia.gif','../pics/alicialink.gif','../pics/cuando.gif','../pics/cuandolink.gif','../pics/malu.gif','../pics/malulink.gif','../pics/cabalum.gif','../pics/cabalumlink.gif','../pics/contacto.gif','../pics/contactolink.gif','../pics/links.gif','../pics/linkslink.gif')">

La parte que pone onLoad="updateFrame() es para la función del frame, el resto es para la carga de imágenes


y ya en el cuerpo de la página tengo el iframe en una capa:

<div id="Layer3" style="position:absolute; left:377px; top:50px; width:550px; height:492px; z-index:3"><iframe id=contentframe
name=contentframe marginWidth=0 marginHeight=0
src="noticias.htm" frameBorder=0 width=550
height=490></iframe></div>

(me pregunto si el error puede estar en el id, el name o el src)

Y, por último, esta es la capa que contiene el menú:

<div align="center">
<table border="0" cellpadding="0" cellspacing="0" width="700">
<tr>
<td>
<div align="center"><a href="noticias.htm" onClick="MM_nbGroup('down','group1','noticias','../pics/noticias.gif',1)" onMouseOver="MM_nbGroup('over','noticias','../pics/noticiaslink.gif','../pics/noticiaslink.gif',1)" onMouseOut="MM_nbGroup('out')" target="contentframe"><img name="noticias" src="../pics/noticias.gif" border="0" onLoad=""></a></div>
</td>
<td>
<div align="center"><a href="bio.htm" onClick="MM_nbGroup('down','group1','bio','../pics/bio.gif',1)" onMouseOver="MM_nbGroup('over','bio','../pics/biolink.gif','../pics/biolink.gif',1)" onMouseOut="MM_nbGroup('out')" target="contentframe"><img name="bio" src="../pics/bio.gif" border="0" onLoad=""></a></div>
</td>
<td>
<div align="center"><a href="america.htm" onClick="MM_nbGroup('down','group1','america','../pics/america.gif',1)" onMouseOver="MM_nbGroup('over','america','../pics/americalink.gif','../pics/americalink.gif',1)" onMouseOut="MM_nbGroup('out')" target="contentframe"><img name="america" src="../pics/america.gif" border="0" onLoad=""></a></div>
</td>
<td>
<div align="center"><a href="alicia.htm" onClick="MM_nbGroup('down','group1','alicia','../pics/alicia.gif',1)" onMouseOver="MM_nbGroup('over','alicia','../pics/alicialink.gif','../pics/alicialink.gif',1)" onMouseOut="MM_nbGroup('out')" target="contentframe"><img name="alicia" src="../pics/alicia.gif" border="0" onLoad=""></a></div>
</td>
<td>
<div align="center"><a href="cuandosehabladeti.htm" onClick="MM_nbGroup('down','group1','cuandosehabla deti','../pics/cuando.gif',1)" onMouseOver="MM_nbGroup('over','cuandosehabladeti' ,'../pics/cuandolink.gif','../pics/cuandolink.gif',1)" onMouseOut="MM_nbGroup('out')" target="contentframe"><img name="cuandosehabladeti" src="../pics/cuando.gif" border="0" onLoad=""></a></div>
</td>
<td>
<div align="center"><a href="malu.htm" onClick="MM_nbGroup('down','group1','malu','../pics/malu.gif',1)" onMouseOver="MM_nbGroup('over','malu','../pics/malulink.gif','../pics/malulink.gif',1)" onMouseOut="MM_nbGroup('out')" target="contentframe"><img name="malu" src="../pics/malu.gif" border="0" onLoad=""></a></div>
</td>
<td>
<div align="center"><a href="cabalum.htm" onClick="MM_nbGroup('down','group1','cabalum','../pics/cabalum.gif',1)" onMouseOver="MM_nbGroup('over','cabalum','../pics/cabalumlink.gif','../pics/cabalumlink.gif',1)" onMouseOut="MM_nbGroup('out')" target="contentframe"><img name="cabalum" src="../pics/cabalum.gif" border="0" onLoad=""></a></div>
</td>
<td>
<div align="center"><a href="contacto.htm" onClick="MM_nbGroup('down','group1','contacto','../pics/contacto.gif',1)" onMouseOver="MM_nbGroup('over','contacto','../pics/contactolink.gif','../pics/contactolink.gif',1)" onMouseOut="MM_nbGroup('out')" target="contentframe"><img name="contacto" src="../pics/contacto.gif" border="0" onLoad=""></a></div>
</td>
<td>
<div align="center"><a href="links.htm" onClick="MM_nbGroup('down','group1','links','../pics/links.gif',1)" onMouseOver="MM_nbGroup('over','links','../pics/linkslink.gif','../pics/linkslink.gif',1)" onMouseOut="MM_nbGroup('out')" target="contentframe"><img name="links" src="../pics/links.gif" border="0" onLoad=""></a></div>
</td>
</tr>
</table>
</div>

Después de comprobar que el munú no cargaba en el iframe añadí a cada enlace la etiqueta target="contentframe" y siguió sin funcionar. La función fue el último añadido pero el maldito menú sigue cargando en la página como si la etiqueta fuera "_self"

Alguien tiene idea de por qué no funciona?
  #2 (permalink)  
Antiguo 13/04/2007, 17:35
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 19 años
Puntos: 281
Re: llamando iframe desde menú (dreamweaber)

Sería mas fácil si tuvieras tu pagina online para poder verlo todo. Así no sabria decir si el problema es el html o javascript.
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #3 (permalink)  
Antiguo 14/04/2007, 02:46
Avatar de acidia  
Fecha de Ingreso: abril-2007
Mensajes: 5
Antigüedad: 17 años, 7 meses
Puntos: 0
Re: llamando iframe desde menú (dreamweaber)

Ya me gustaría compartirla juaniquillo, de verás que lo he intentado, pero soy nueva en el foro y me sale un mensaje que mientras no tenga una antigüedad de treinta días no puedo pegar urls por si me divirtiera dedicarme al spam, que no es mi caso, asi que te dejo la direccion sin el http, dos puntos, dos barras, tres uves doble de turno punto para que lo pongas tú, a ver si así cuela...

orion-servigles.com/nigrased/oroza/es/principal.htm
  #4 (permalink)  
Antiguo 14/04/2007, 03:19
Avatar de acidia  
Fecha de Ingreso: abril-2007
Mensajes: 5
Antigüedad: 17 años, 7 meses
Puntos: 0
Re: llamando iframe desde menú (dreamweaber)

Muchas gracias juaniquillo, buscando el modo de poner la url aquí me he dado cuenta de que si cargaba la página principal directamente, el menu sí carga en el iframe, mientras que si lo hacía desde el index no funcionaba. Si no me hubieras pedido la url no lo hubiera encontrado el fallo, un error en una etiqueta del index, así de simple y trayéndome de cabeza jajaja.

Última edición por acidia; 14/04/2007 a las 04:02 Razón: lo he conseguido
  #5 (permalink)  
Antiguo 14/04/2007, 08:27
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 19 años
Puntos: 281
Re: llamando iframe desde menú (dreamweaber)

Pues que bueno que te pude ayudar (aunque haya sido sin querer.. jejeje). Cuando vayas a poner una dirección antes de los 50 post puedes ponerla como lo has hecho arriba, sin el:
Código:
http://www
Esa regla se tiene para los que sólo se inscriben para hacer spam, pero sabemos que ese no es tu caso, así que no te preocupes...
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
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 21:54.