Foros del Web » Programando para Internet » Javascript »

onMouseUp nome hace caso mientras se ejecuta while

Estas en el tema de onMouseUp nome hace caso mientras se ejecuta while en el foro de Javascript en Foros del Web. Hola... she she!!! no me dabola el onMouseUp -.-" tengo este div con los eventos onmousedown y onMouseUp <div class="up" style="left:55px; Top:15px;" onmousedown="javascript :Pulsado('up')" onMouseUp="javascript ...
  #1 (permalink)  
Antiguo 06/08/2012, 08:51
 
Fecha de Ingreso: julio-2012
Ubicación: Casa
Mensajes: 10
Antigüedad: 10 años
Puntos: 0
Pregunta onMouseUp nome hace caso mientras se ejecuta while

Hola... she she!!! no me dabola el onMouseUp -.-"

tengo este div con los eventos onmousedown y onMouseUp

<div class="up" style="left:55px; Top:15px;" onmousedown="javascript:Pulsado('up')" onMouseUp="javascript:ratonSoltado()"></div>

ya probe y se ejecutan bien las funciones...

function Pulsado(dir) { y function ratonSoltado() {

el problema biene cuando meto un while boolean dentro de la funcion pulsado...

while (estaPulsado){
}

el while funciona... y hace su trabajo... pero dentro de
ratonSoltado tengo la variable estaPulsado=false... q si bien funciona... pero cuando meto while... no cambia su valor a false... ni siquiera se ejecuta el evento ratonSoltado

estaPulsado esta declarado fuera de las funciones... con eso ya tendria q pasarse el valor entre funciones...

q me recomiendan?
  #2 (permalink)  
Antiguo 06/08/2012, 09:18
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 14 años, 1 mes
Puntos: 220
Respuesta: onMouseUp nome hace caso mientras se ejecuta while

La verdad no entendi nada lo que quieres realizar, ademas de la forma que te expresas nadie podria comprender que es lo que realmente quieres
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones
  #3 (permalink)  
Antiguo 06/08/2012, 09:23
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 11 años, 3 meses
Puntos: 343
Respuesta: onMouseUp nome hace caso mientras se ejecuta while

Disclaimer: No entendí bien el post.

JavaScript y la UI del browser corren sobre un mismo "thread", con lo cual, si estás ejecutando JS, como es el caso de tu while, no podes esperar respuesta de la UI, como es tu event listener.
__________________
blog | @aijoona
  #4 (permalink)  
Antiguo 06/08/2012, 09:26
 
Fecha de Ingreso: julio-2012
Ubicación: Casa
Mensajes: 10
Antigüedad: 10 años
Puntos: 0
Respuesta: onMouseUp nome hace caso mientras se ejecuta while

osea... q si el while se esta ejecutando... el evento onMouseUp... no se ejecutara?

q macana xD!... voy a ver como lo hago esquivando el while... :P
  #5 (permalink)  
Antiguo 06/08/2012, 11:51
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 11 años, 3 meses
Puntos: 343
Respuesta: onMouseUp nome hace caso mientras se ejecuta while

No deberías bloquear el thread con JavaScript, de hecho una ejecución de 100ms ya se siente molesto.
__________________
blog | @aijoona
  #6 (permalink)  
Antiguo 06/08/2012, 13:32
 
Fecha de Ingreso: julio-2012
Ubicación: Casa
Mensajes: 10
Antigüedad: 10 años
Puntos: 0
Respuesta: onMouseUp nome hace caso mientras se ejecuta while

mmmm en realidad... lo que quiero.. es q una imagen se mueva por la pantalla, mediante unos controles... lo logre con onclick... pero no me sirve por q ahi q hacer 1000 click para q se desplace... ya q la imagen es enorme... con un visor chico...

entonces se me ocurrio q con onmousedown... podria detectar q se esta haciendo click en el boton y q la imagen se desplace con un while... hasta q suelte el boton y ahi pare el while...

Código javascript:
Ver original
  1. function Pulsado(dir) {
  2.         estaPulsado = true;
  3.         while (estaPulsado==true){
  4.             alert(estaPulsado);
  5.             //Calcular la diferencia de posición
  6.             yInc=0;
  7.             xInc=0;
  8.             if (dir=='up'){
  9.                 yInc = 10;
  10.             }else if (dir=='down'){
  11.                 yInc = -10;
  12.             }else if (dir=='right'){
  13.                 xInc = -10;
  14.             }else if (dir=='left'){
  15.                 xInc = 10;
  16.             }
  17.                        
  18.             //Establecer la nueva posición
  19.             var elemento = document.getElementById("Div240");
  20.             var position = getPosicion(elemento);
  21.            
  22.             MoverX = (position[1] + xInc);
  23.             MoverY = (position[0] + yInc);
  24.            
  25.             elemento.style.left = MoverX + "px";           
  26.             elemento.style.top =  MoverY + "px";
  27.         }
  28.     }
  29.    
  30.     function ratonSoltado() {
  31.         estaPulsado = false;
  32.         alert(estaPulsado);
  33.     }
  #7 (permalink)  
Antiguo 06/08/2012, 14:22
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 11 años, 3 meses
Puntos: 343
Respuesta: onMouseUp nome hace caso mientras se ejecuta while

Estoy sin demasiado tiempo, tengo algo parecido (usando canvas):

http://jsfiddle.net/Aijoona/NYkaJ/
__________________
blog | @aijoona

Etiquetas: ejecuta, funcion, mientras
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 15:02.