Foros del Web » Programando para Internet » Javascript »

ayuda con paso de objetos entre funciones y setTimeout

Estas en el tema de ayuda con paso de objetos entre funciones y setTimeout en el foro de Javascript en Foros del Web. Hola amigos de javascript. Estoy bloqueado, ¿ podrian hecharme una mano ? Tengo estas funciones: function mostrar ( capa ) { pausa ( "document.getElementById( " ...
  #1 (permalink)  
Antiguo 04/10/2005, 07:38
Avatar de programeitor  
Fecha de Ingreso: febrero-2005
Mensajes: 994
Antigüedad: 19 años, 2 meses
Puntos: 9
ayuda con paso de objetos entre funciones y setTimeout

Hola amigos de javascript.

Estoy bloqueado, ¿ podrian hecharme una mano ?

Tengo estas funciones:

functionmostrar(capa)
{
pausa("document.getElementById("+capa+").style.visibility='visible'",200)
}

functionpausa(funcion,tiempo)
{
setTimeout(funcion,tiempo)
}

la llamada a la funcion mostrar la realizo asi:

<divonmouseover="mostrar('referencias')"onmouseout="ocultar('referencias')">
<inputtype="button"value="Referencias"title="Referencias historicas"class="extendido">
<divid="referencias">
<ahref="#biblia"title="Presuntas referencias de Tartesos en el Antiguo Testamento.">Biblia</a><br>
<ahref="#griegos"title="Testimonios y leyendas Griegas sobre esta antigua civilizacion. ">Griegos</a><br>
<ahref="#romanos"title="Los Romanos dada su posterior llegada, resumen y dan cierta coexion a los testimonios anteriores.">Romanos</a><br>
</div>
</div>

Debo decirles, que la funcion mostrar(capa) sin la llamada a pausa funcion,tiempo) funciona perfectamente., de esta forma:


functionmostrar(capa)
{
document.getElementById(capa).style.visibility='visible'
}

.......Ya ven, he probado de todas formas y no logro que la acepte,he puesto y quitado comillas de todas las manereas posibles.

Si me dan una ayudita

  #2 (permalink)  
Antiguo 04/10/2005, 10:21
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola programeitor (Que raro es verte preguntando y no ayudando a los demás...):

Lo que veo es que te falta entrecomillar la "capa" en la función pausa...

functionmostrar(capa)
{
pausa("document.getElementById('"+capa+"').style.visibility='visible'",200)
}

Espero que te sirva.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 04/10/2005, 14:09
Avatar de programeitor  
Fecha de Ingreso: febrero-2005
Mensajes: 994
Antigüedad: 19 años, 2 meses
Puntos: 9
Si, la verdad es que me como bastante el coco antes de preguntar., soy de naturaleza autodidacta.

Pues si, era eso, debe ser la unica combinacion de comillas que no he probado, y entiendo que esa es la forma correcta, pero a veces pasan estas cosas.

he tenido que añadir un clearTimeout y una variable, porque la capa no se ocultaba con la funcion "ocultar(capa)" de identica factura que "mostrar(capa)" quedando asi:


function
mostrar(capa)
{
if(!document.getElementById(capa).pausa)
{
document.getElementById(capa).pausa=pausa("clearTimeout(document.getElementById('"+capa+"').pausa);document.getElementById('"+capa+"').style.visibility='visible'",300)
}
}

Ademas tengo que asignarle a los "setTimeout" el mismo tiempo, sino se me oculta la capa, creo que las funciones o los elementos no estan bien "ordenados" ya que al parecer la capa se muestra y oculta constantemente, mientras esta onmouseover, tal vez deba deshabilitarlo hasta que no se oculte.

Tengo que ver la manera de evitar tanto "document.getElementById" ,lo intente una vez asignandoselo a una variable al principio del script:

ids=document.getElementById

pero Nescape no se lo tragaba.

Bueno caricatos, gracias por tu ayuda.

Pd:por cierto, a ti te veo preguntar poco, yo diria que nada, debes ser tambien autodidacta. Saludos.
  #4 (permalink)  
Antiguo 04/10/2005, 16:03
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Cita:
Iniciado por programeitor
...

Pd:por cierto, a ti te veo preguntar poco, yo diria que nada, debes ser tambien autodidacta. Saludos.
¡Je, je!... sí que pregunto, pero supongo que a tí también te pasará que no lo hago sin haber hecho unas cuantas "pruebas" antes (me inventé un probador de scripts que día a día le saco chispas...)

En javascript soy autodidacta, pero he estudiado algo (algún titulito de nivel medio y poco más...)

Bueno, lo importante es que ya te funcionen tus cosillas.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
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 02:23.