Tengo un control deslizante que se utiliza como una línea de tiempo en mi reproductor de música. El valor mínimo es 0 y el vlaue máximo es la duración de la canción (en segundos). Cada segundo (lo hago con un temporizador), el control deslizante se mueve y el valor se establece en la hora actual. Esta línea de código es el que:jQuery slider evento de "cambio": ¿cómo puedo determinar quién lo llamó?
$("#sliderTime").slider("option", "value", document.sound.controls.currentPosition);
El usuario es capaz de deslizarse/haga clic en el control deslizante y saltar a otro punto de la canción, esto es por el disparo de la 'juego (startPlayFromHere)' función. Se ve así:
$("#sliderTime").slider({
...
change: function (event, ui) { play(ui.value) },
});
El problema es que tanto la línea de código en el temporizador y el usuario está llamando el mismo evento 'cambio' del cursor, y el usuario no puede mover el cursor.
Así que mi pregunta es ¿cómo puedo determinar si el usuario llamó al evento de cambio o no (eso significa que fue el temporizador)?
Espero que sea lo suficientemente claro, Gracias!
Gracias! Ahora tengo otro problema: cuando el usuario intenta deslizarse, el temporizador aún funciona y desliza el control deslizante. A veces, el control deslizante vuelve a la posición original e ignora la llamada de los usuarios. – eviabs
No hay tiempo para escribirlo pero puede adjuntar un controlador 'start' (vea [documentation] (http://jqueryui.com/demos/slider/)) para levantar una bandera que inhibirá (con el ajuste correspondiente del código del temporizador)) el control del temporizador del control deslizante. Vuelva a bajar la bandera en el controlador 'change'. (Alternativamente, detenga el temporizador, luego reinícielo). –