Foros del Web » Programando para Internet » Javascript »

vinculos en menú

Estas en el tema de vinculos en menú en el foro de Javascript en Foros del Web. Hola, tengo problema para direccionar el vínculo en un menú a un marco concreto de la página que tengo, ésta contiene 3 frames, el menú ...
  #1 (permalink)  
Antiguo 18/11/2004, 02:14
 
Fecha de Ingreso: noviembre-2004
Mensajes: 5
Antigüedad: 19 años, 5 meses
Puntos: 0
vinculos en menú

Hola, tengo problema para direccionar el vínculo en un menú a un marco concreto de la página que tengo, ésta contiene 3 frames, el menú lo tengo en el frame izquierdo y el destino lo quiero poner en el frame principal.
A continuación pongo el código de mi página principal y el de la función makeMenu por si me podéis ayudar.
Gracias de antemano,

menus=new Array(); var a=0; var b=0; var c=0; var d=0
function makeMenu(type,text,lnk,target,end){
str=""; tg="";
if(target) tg='target="'+target+'"'
if(!lnk) lnk="#"
self.status=lnk
if(a==0) str='<div id="divSlideCont">\n'
if(type=="top"){
menus[a]=new Array();
if(text=="seperator"){
str+='\t<div id="divSlide'+a+'" class="clSlide"></div>\n'
menus[a].seperator=1
}else{
str+='\t<div id="divSlide'+a+'" class="clSlide"><a href="'+lnk+'" '+tg+' onclick="swmenu('+a+',-1,-1); if(bw.ie || bw.ns6) this.blur(); '
if(lnk=="#") str+='return false'
str+='" class="clSlideLinks"> '+text+'</a><br></div>\n'
}
menus[a].subs=0; a++; b=0
}else if(type=="sub"){
str+='\t\t<div id="divSlideSub'+(a-1)+'_'+(b)+'" class="clSlideSub"><a '+tg+' onclick="swmenu('+(a-1)+','+b+',-1); if(bw.ie || bw.ns6) this.blur(); '
if(lnk=="#") str+='return false'
str+='" href="'+lnk+'" class="clSlideSubLinks"> '+text+'</a><br></div>\n'
b++; menus[a-1].subs=b; menus[a-1][b-1]=new Array(); c=0; menus[a-1][b-1].subs=0
}else if(type=="sub2"){
str+='\t\t<div id="divSlideSub'+(a-1)+'_'+(b-1)+'_'+c+'" class="clSlideSub2"><a '+tg+' href="'+lnk+'" class="clSlideSub2Links"> '+text+'</a><br></div>\n'
c++; menus[a-1][b-1].subs=c; menus[a-1][b-1][c-1]=new Array(); d=0; menus[a-1][b-1][c-1].subs=0
}
if(end) str+="</div>"
document.write(str)
}

Aquí vendría uno de los menús ...
//Menu 1
makeMenu('top','productos')
makeMenu('sub','poliuretano','poliuretano.htm','ri ghtframe')
makeMenu('sub','lana de roca','lana.htm','rightframe')
makeMenu('sub','extrusionado','extrusionado.htm',' rightframe')
makeMenu('sub','pur-al','pural.htm','rightframe')
makeMenu('sub','fibrocemento','fibrocemento.htm',' rightframe')
makeMenu('sub','placas de yeso','tabiqueria.htm', 'rightframe')

Aquí os pongo el código de la página principal
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<frameset rows="85,*" frameborder="NO" border="0" framespacing="0" cols="*">
<frame name="topFrame" scrolling="NO" noresize src="indexa.htm" >
<frameset cols="12%,*" frameborder="NO" border="0" framespacing="0" rows="*">
<frame name="leftFrame" scrolling="NO" noresize src="indexi.htm">
<frameset cols="*,121" frameborder="NO" border="0" framespacing="0" rows="*">
<frame name="mainFrame" src="NUEVO.htm">
<frame name="rightFrame" scrolling="NO" noresize src="indexd.htm">
</frameset>
</frameset>
</frameset>
<noframes>
<body bgcolor="#FFFFFF" text="#000000">
</body>
</noframes>
</html>
  #2 (permalink)  
Antiguo 18/11/2004, 03:48
 
Fecha de Ingreso: octubre-2004
Ubicación: Barcelona
Mensajes: 195
Antigüedad: 19 años, 6 meses
Puntos: 7
¿Pero te da algún tipo de error? Yo de ti probaría a cambiar un momento las últimas líneas para ver cual es la salida del programa:
Código PHP:
if(endstr+="</div>"
//document.write(str)
alert(str)

PS cuando pongas código javascript, utiliza la opción php del editor para hacerlo mas comprensible...
  #3 (permalink)  
Antiguo 18/11/2004, 04:49
 
Fecha de Ingreso: noviembre-2004
Mensajes: 5
Antigüedad: 19 años, 5 meses
Puntos: 0
el problema que tengo es que el vínculo me lo abre en una nueva pantalla, cuando yo lo que quiero es que me lo abra en uno de los frames que tengo.
Gracias
  #4 (permalink)  
Antiguo 18/11/2004, 10:17
 
Fecha de Ingreso: octubre-2004
Ubicación: Barcelona
Mensajes: 195
Antigüedad: 19 años, 6 meses
Puntos: 7
El problema que tienes es que target es sensible a mayúsculas y minúsculas. En la definición del frame pone rightFrame y en el target rightframe.
  #5 (permalink)  
Antiguo 18/11/2004, 10:43
 
Fecha de Ingreso: noviembre-2004
Mensajes: 5
Antigüedad: 19 años, 5 meses
Puntos: 0
Lo he probado pero me sigue sin funcionar, me abre una nueva ventana.
Gracias de todos modos
  #6 (permalink)  
Antiguo 18/11/2004, 14:17
 
Fecha de Ingreso: octubre-2004
Ubicación: España
Mensajes: 894
Antigüedad: 19 años, 6 meses
Puntos: 3
Hola, angelc
Repásalo de nuevo, pues pintix tiene razón.
Si cambio
makeMenu('sub','poliuretano','poliuretano.htm','ri ghtframe')
por
makeMenu('sub','poliuretano','poliuretano.htm','ri ghtFrame')
se abre en el marco de la derecha y no en ventana nueva.
__________________
Angel :cool:
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 17:48.