Retroceder   Foros del Web > Programación para sitios web > Javascript

Respuesta
 
Herramientas Desplegado
Antiguo 08-may-2008, 20:26   #1 (permalink)
Calisco tiene algunos puntos positivos de karma
 
Avatar de Calisco
 
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 696
Interrumpir eventos

Sin lugar a dudas tengo muchas materias pendientes con JS; los eventos es la más importante.
Realmente no se como puedo evitar que el motor deje de llamar a funciones que previamente yo había definido que se ejecuten en un evento determinado.
Estoy trabajando con mooTools ... pero seguro que con muy poco lo trasladamos a JS puro (puristas abstener las risas ... y mas si tienen más de 10000 post ).
En esta página http://www.xifox.net he definido tres eventos pos cada ventanita inferior: mouseenter (que es como mouseover), mouseleave (que es como mouseout) y mousedown.
Al hacer hover cambia la transparencia de la ventana.
Todo bien hasta ahí.
Ahora ... , cuando hago mousedown empiezo una animación de desplazamiento de las ventanas (left: x) que deberían terminar encimándose; el problema es que en la transición se vuelven a producir mouseenter y/o mouseleave en algunas de estas y me detiene la transición.
Simple pregunta:
Cómo puedo eliminar, momentáneamente y a mi antojo, estos eventos, ya sea en los elementos de las ventanas, o en todo el browser ?
No se si se entiende ...

Saludos, y gracias.

PD: recibo críticas del diseño, recién empiezo.
__________________
| Cabeza De Raton | Foro MooTools en Castellano |

Última edición por Calisco; 09-may-2008 a las 04:41.
Calisco está desconectado   Responder Citando
Antiguo 08-may-2008, 22:16   #2 (permalink)
venedan ha deshabilitado el karma
 
Fecha de Ingreso: septiembre-2007
Mensajes: 37
Re: Interrumpir eventos

Cita:
Iniciado por Calisco Ver Mensaje
No se si se entiende ...
yo de verdad no entendi ah y por cierto el diseño se ve bien
venedan está desconectado   Responder Citando
Antiguo 08-may-2008, 22:28   #3 (permalink)
jahepi está en el buen camino
 
Avatar de jahepi
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 751
Re: Interrumpir eventos

Hola Calisco !

No estoy muy familiarizado con el framework mootools, pero en su página podrías consultar la documentación relacionada con el manejo de eventos.

Saludos !
__________________
http://jahepi.blogspot.com/
jahepi está desconectado   Responder Citando
Antiguo 09-may-2008, 04:38   #4 (permalink)
Calisco tiene algunos puntos positivos de karma
 
Avatar de Calisco
 
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 696
Re: Interrumpir eventos

Ya la consulté ... saludos y gracias.
__________________
| Cabeza De Raton | Foro MooTools en Castellano |
Calisco está desconectado   Responder Citando
Antiguo 09-may-2008, 04:41   #5 (permalink)
Moderador
caricatos es realmente agradablecaricatos es realmente agradablecaricatos es realmente agradablecaricatos es realmente agradablecaricatos es realmente agradablecaricatos es realmente agradable
 
Avatar de caricatos
 
Fecha de Ingreso: noviembre-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 12.244
Re: Interrumpir eventos

Hola Calisco:

Me parece que estoy en ese grupo del que pides abstinencia , aunque tal vez comentándote mi experiencia (que dicen que es la madre de las ciencias) te pueda ayudar algo...

La verdad es que los eventos no se pueden deshabilitar, pero sí puede programarse un comportamiento distinto para distintas ocasiones... por ejemplo, si en tu manejador del evento la trancisión está temporizada (setTimeout/setInterval), puedes hacer una cancelación de esa temporización desde otro evento:

onmouseover="transito = true; transitar(this.id, 0)"
onmouseout="transito=false"

function transitar(elemento, estado) {
if (transito || estado < 100) {
opacar(elemento, ++estado);
setTimeout("transitar('" + elemento + "', " + estado);
}
}

Como se ve la función se ejecuta con 2 condicionamientos.

... y no seas gruñón.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
caricatos está desconectado   Responder Citando
Antiguo 09-may-2008, 04:58   #6 (permalink)
Calisco tiene algunos puntos positivos de karma
 
Avatar de Calisco
 
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 696
Re: Interrumpir eventos

Ok, está bien, si no entiendo mal lo que me dices es que de alguna manera yo puedo ejecutar o no el código de una función que es invocada por el explorador en cierto evento a través, en este caso, del valor de una variable ?. Si es así, no es lo que estoy intentando saber.

Empecemos de nuevo de cero.

Tengo un Elemento HTML
Código HTML:
<div id="miNodoHTML">HOA !</div>
Y en JS tengo la referencia DOM a ese elemento en una variable
Código PHP:
var miNodo = $('miNodoHTML');
// No uso getElementById, tuve que entrar a google para que me sugiriera el nombre correcto ! ;-) 
Ahora quiero definirle un comportamiento particualr a ese elemento cuando paso por encima el puntero del mouse.
Código PHP:
miNodo.AddEvent ('mouseenter', function (ev) {
    
alert ('No uso console.log ... pero esta 100 veces mejor !'); 
A diferencia de las funciones normales, esta función no es invocada a mi antojo, si no que mi amigo el browser la llama justamente cuando hacemos mouseenter por sobre el área del elemtno HTML.

Teniendo esto claro ... ahora yo pregunto ... Puedo eliminar momentáneamente la ejecución de esa función previamente definida para el evento mouseleave ... y volver a habilitarla cuando yo quiera ?
Más allá de ser obstinado, he visto algunos métodos que supuestamente harían esa tarea, por ejemplo en mootools, existe removeEvent() y removeEvents(); pero no me funcionan como esperase.

Saludos y gracias.
PD: No soy gruñón, soy impotente en este tema (que lo sea en este no implica que no lo sea en otros planos ... tampoco lo contrario, Mejor no aclaro más) :D
__________________
| Cabeza De Raton | Foro MooTools en Castellano |
Calisco está desconectado   Responder Citando
Antiguo 09-may-2008, 05:30   #7 (permalink)
Calisco tiene algunos puntos positivos de karma
 
Avatar de Calisco
 
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 696
Re: Interrumpir eventos

Hice unas modificaciones usando una variable lógica que condiciona el evento ... funciona; pero creo que esto no termina aún.
Saludos.
__________________
| Cabeza De Raton | Foro MooTools en Castellano |
Calisco está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 19:59.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93