Foros del Web » Programando para Internet » Javascript »

Fading Menu: Solo funciona cuando esta en forma vertical

Estas en el tema de Fading Menu: Solo funciona cuando esta en forma vertical en el foro de Javascript en Foros del Web. Hola Soy un novato en javascript, la verdad no domino muy bien este lenguaje. Tengo un script de un menu cuyos items se resaltan progresivamente ...
  #1 (permalink)  
Antiguo 14/01/2006, 22:49
okram
Invitado
 
Mensajes: n/a
Puntos:
Fading Menu: Solo funciona cuando esta en forma vertical

Hola

Soy un novato en javascript, la verdad no domino muy bien este lenguaje. Tengo un script de un menu cuyos items se resaltan progresivamente al pasar el mouse sobre ellos. Lo que pasa es que el script original (Lo baje de una pagina ) era de un menu en forma vertical, y yo quiero colcarlo en mi web en la parte superior de forma horizontal.

Estos son los codigos:

En mi archivo scripts1.js
Código:
nOpac = 50;
nPlus = 2;
nMin = 1;
speed = 50;
timer = null; 
timer2 = null;

var ie5=(document.all && document.getElementById);
var ns6=(!document.all && document.getElementById);

function fadeImg2(teller)
{
 apl[teller][1] = "Up";
 changes();
}

function fadeImgend2(teller)
{
 apl[teller][1] = "Down";
 setTimeout("changes()",50);
}

function changes()
{
 next_loop = true;
 for (i=0;i<apl.length;i++)
 {
  obj = link_table.rows[i].cells[0];
  opacity = apl[i][0]
  if (apl[i][1] == "Up")
  {
     opacity += nPlus;
     apl[i][0] = opacity;
     if (apl[i][0] > 105) 
      {apl[i][1] = "";}
     else
     {next_loop = false;}
	 nOpac = opacity;
  }
  else
  {
  if (apl[i][1] == "Down")
  {
     opacity -= nMin;
     apl[i][0] = opacity;
     if (apl[i][0] < 45) 
      {apl[i][1] = "";}
     else
     {next_loop = false;}
	 nOpac = opacity;
  }
  }
  if(ie5){ 
	obj.style.filter="alpha(opacity="+opacity+")";
    }
  if(ns6){ 
   	obj.style.MozOpacity = opacity + '%';
   }
 }
 if (next_loop == false)
  {
   timer = setTimeout("changes()",speed);
  }
  else
  {
   clearTimeout(timer);
  }
}

//for each link option you need to make a new Array;
var apl = new Array();
apl[0] = new Array(45,"");
apl[1] = new Array(45,"");
apl[2] = new Array(45,"");
apl[3] = new Array(45,"");
apl[4] = new Array(45,"");
apl[5] = new Array(45,"");
En estilos.css
Código:
td.menu         { padding:5; border:1px solid #000000; background-color:#000000; width:100; text-align:center; font-family:Arial Narrow; cursor: pointer; color:#FFFFFF; font-variant:small-caps; font-weight:bold }
Y en mi pagina (pageheader.tpl)
Código HTML:
<table cellpadding=0 cellspacing=0 name=link_table id=link_table>
<tr>
<td class="menu" onmouseover="fadeImg2(0)" onmouseout="fadeImgend2(0)" 
onclick="window.location='#';">Home</td>
</tr>
<tr>
<td class="menu" onmouseover="fadeImg2(1)" onmouseout="fadeImgend2(1)" 
onclick="window.location='#';">New</td>
</tr>
<tr>
<td class="menu" onmouseover="fadeImg2(2)" onmouseout="fadeImgend2(2)" 
onclick="window.location='#';">About</td>
</tr>
<tr>
<td class="menu" onmouseover="fadeImg2(3)" onmouseout="fadeImgend2(3)" 
onclick="window.location='#';">Pictures</td>
</tr>
<tr>
<td class="menu" onmouseover="fadeImg2(4)" onmouseout="fadeImgend2(4)" 
onclick="window.location='#';">Partners</td>
</tr>
<tr>
<td class="menu" onmouseover="fadeImg2(5)" onmouseout="fadeImgend2(5)" 
onclick="window.location='#';">Contact</td>
</tr>
</table> 
Asi funciona bien, pero esta en forma vertical. Lo puse en forma horizontal, asi:

Código HTML:
<table cellpadding=0 cellspacing=0 name=link_table id=link_table>
<tr>
<td class="menu" onmouseover="fadeImg2(0)" onmouseout="fadeImgend2(0)" 
onclick="window.location='#';">Home</td>
<td class="menu" onmouseover="fadeImg2(1)" onmouseout="fadeImgend2(1)" 
onclick="window.location='#';">New</td>
<td class="menu" onmouseover="fadeImg2(2)" onmouseout="fadeImgend2(2)" 
onclick="window.location='#';">About</td>
<td class="menu" onmouseover="fadeImg2(3)" onmouseout="fadeImgend2(3)" 
onclick="window.location='#';">Pictures</td>
<td class="menu" onmouseover="fadeImg2(4)" onmouseout="fadeImgend2(4)" 
onclick="window.location='#';">Partners</td>
<td class="menu" onmouseover="fadeImg2(5)" onmouseout="fadeImgend2(5)" 
onclick="window.location='#';">Contact</td>
</tr>
</table> 
pero el efecto fading se pierde. Revise cada letra del scripts1.js, y creo q tendria que cambiar esta linea:

Código:
  obj = link_table.rows[i].cells[0];
pense que cambiando rows a cols se arreglaria, pero nada. Espero me puedan ayudar

Salu2
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 09:52.