Tengo una etiqueta de anclaje <a class="next">next</a>
hecha en un "botón". A veces, esta etiqueta debe ocultarse si no hay nada nuevo que mostrar. Todo funciona bien si simplemente oculto el botón con .hide() y lo vuelvo a visualizar con .show(). Pero quería utilizar .fadeIn() y .fadeOut() en su lugar.¿Cómo puedo "volver a vincular" el evento de clic después de desvincular ('clic')?
El problema que tengo es que si el usuario hace clic en el botón durante la animación fadeOut, puede causar problemas con la lógica que tengo al ejecutar el programa. La solución que encontré fue desvincular el evento de clic del botón después de que la función de clic original comienza, y luego volver a unirlo una vez que se completa la animación.
$('a.next').click(function() {
$(this).unbind('click');
...
// calls some functions, one of which fades out the a.next if needed
...
$(this).bind('click');
}
la última parte del ejemplo anterior no funciona. El evento click no se vuelve a vincular al delimitador. ¿Alguien sabe la forma correcta de lograr esto?
Soy un chico jquery autodidacta, por lo que algunos de los aspectos de nivel superior como unbind() y bind() están por encima de mi cabeza, y la documentación de jquery no es lo suficientemente simple como para que yo pueda entender.
Gracias nickf, Eso funcionó perfectamente. Pero todavía tengo curiosidad sobre cómo "volver a vincular" el evento click si alguien sabe. – Ben