Pregunta

No he podido resolver mi problema para buscar a través de Stack. Tengo mi función Live () a continuación. Puede ver cómo quiero detener el botón que se hace clic por segunda vez mientras la función se está ejecutando, y luego volver a reembolsar. El botón muere desapercibida, pero no se une de nuevo ...: S

$('.control-left, .prevActive').live('click',function(){

    var firstSlide = $('.slider li:first-child');

    if(firstSlide.attr('class') != 'active'){   
        $('.control-left, .prevActive').die('click');   
        moveSlider('left');
        $('.control-left, .prevActive').live('click');
    }

});
¿Fue útil?

Solución

No hay necesidad de desgastar y reembolsar solo use una bandera:

var running = false;
$('.control-left, .prevActive').live('click',function(){
    var firstSlide = $('.slider li:first-child');

    if(firstSlide.attr('class') != 'active' && !running){ 
        running = true;
        moveSlider('left');
        running = false;
    }
});

Otros consejos

No está pasando ninguna función para .live .. intente esto:

$('.control-left, .prevActive').live('click',function hello(){

    var firstSlide = $('.slider li:first-child');

    if(firstSlide.attr('class') != 'active'){   
        $('.control-left, .prevActive').die('click');   
        moveSlider('left');
        $('.control-left, .prevActive').live('click', hello);
    }

});

Su última línea de código no une nada al controlador de clics. Debes unir una función

$('.control-left, .prevActive').live('click', function () { code here });

En tu situación probablemente te gustaría hacer algo como esto

var myspecialclickfunction = function(){

  var firstSlide = $('.slider li:first-child');

  if(firstSlide.attr('class') != 'active'){   
      $('.control-left, .prevActive').die('click');   
      moveSlider('left');
      $('.control-left, .prevActive').live('click', myspecialclickfunction);
};

$(document).ready(function () {
  $('.control-left, .prevActive').live('click',myspecialclickfunction);
});

También jQuery 1.42 a 1.6x que debería usar

en jQuery 1.7+

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top