2012-12-26 3 views
0

J'essaie de désactiver le double-clic dans un DIV. J'ai essayé plusieurs différentes solutions recommandées mais elles ne semblent pas fonctionner.jQuery - Désactiver le double clic ne fonctionne pas

J'ai une déclaration qui montre et vrai faux boutons que l'utilisateur peut choisir. Cela n'a pas d'importance si l'utilisateur choisit true ou false, car le #answerContainer apparaît et vous donne la réponse, avec un lien qui dit "NEXT STATEMENT". Mon problème est que lorsque l'utilisateur clique deux fois sur "NEXT STATEMENT", les animations définies commencent à se chevaucher.

Est-ce que ça va être possible de désactiver le double-cliquant sur #nextS (PROCHAIN ​​") Lien

Merci

$(document).ready(function(){ 

var questions = ["This is question 1","This is question 2","This is question 3"]; 

var answers = ["<strong>FALSE: </strong> This statement is not true.","<strong>TRUE: </strong> This statement is true.","<strong>TRUE: </strong> This statement is true."]; 

$('#nextS,#bTrue,#bFalse').css('cursor', 'pointer'); 

var z = 0; 

$('#questions').html(questions[z]); 

    $('#bTrue,#bFalse').bind('click',function(e){ 
    e.preventDefault(); 
$(this).prop('disabled', true); // DISABLE 
     $('#bTrue,#bFalse').fadeOut('fast', function(){ 
     // Animation complete 
     $('#right').animate({top:0}, 800, function() { 
      //callback 
      $('#true-false').css('background-image', 'url(' + tf[z] + ')'); 
      $('#true-false').fadeIn(); 
      $('#answerContainer').html("&nbsp;"); 
      $('#answerContainer').fadeIn(800, function() { 
      $('#bTrue,#bFalse').prop('disable', false); // ENABLE after container fades out 
       //callback 
       $('#answerContainer').html(answers[z] + "<p id=\"nextS\"><a href=\"#\">NEXT STATEMENT</a></p>"); 
       //NEXT STATEMENT CLICK 
$('#nextS').bind('click',function(e){ 
e.preventDefault(); 
$(this).prop('disabled', true); // DISABLE 
z++; 
$('#true-false').fadeOut(); 
$('#answerContainer').fadeOut(800, function(){ 
    //callback 
    $('#right').animate({top:175}, 800, function(){ 
     $('#questions').html(questions[z]); 
      checkZ(); 
      //alert(questions[z]); 
     }); 
    }); 
}); 
//NEXT STATEMENT CLICK 
      $('#nextS').prop('disable', false); // ENABLE after container fades out 


      }); 
     }); 
    }); 
}); 
}); 
+1

Ouais et c'est dommage parce qu'il y a de meilleures réponses – Alexander

+0

Merci Jay, réparant maintenant. – user1320948

Répondre

2

Essayez de désactiver le lien -!

//NEXT STATEMENT CLICK 
$('#nextS').bind('click',function(e){ 
    e.preventDefault(); 
    $(this).prop('disabled', true); // DISABLE 
    z++; 
    $('#true-false').fadeOut(); 
    $('#answerContainer').fadeOut(800, function(){ 
     //callback 
     $('#right').animate({top:175}, 800, function(){ 
      $('#questions').html(questions[z]); 
       checkZ(); 
       //alert(questions[z]); 
      }); 
      $('#nextS').prop('disable', false); // ENABLE after container fades out 
     }); 
}); 
//NEXT STATEMENT CLICK 

I Je ne suis pas sûr de ne pas en voir plus, mais vous voudrez peut-être réactiver le lien plus tard dans votre processus que ce que j'ai ici

+0

Je pense que c'est une meilleure méthode à implémenter que d'éviter les doubles-clics. – Prash

+0

Merci Jay, je l'ai ajouté et ça a l'air de marcher mais maintenant mes boutons Vrai/Faux gâchent les animations. J'ai essayé d'ajouter la même solution aux liens True/False mais cela ne fonctionne pas. – user1320948

+0

Pouvez-vous mettre en place un violon? –

Questions connexes