2017-08-21 6 views
0

J'ai un autre problème. Cette fois je veux faire que quand un compte à rebours atteint 0, il déclenche ou affiche une fenêtre modale pour apparaître.Faire un compte à rebours afficher une fenêtre modale bootstrap

J'ai les deux codes pour le compte à rebours modal et le compte à rebours, mais je ne sais pas exactement comment le faire pour le modal.

J'ai essayé plusieurs suggestions que j'ai lues, mais aucune ne fonctionne ou il suffit de visser le code.

Merci beaucoup à l'avance.

var seconds = 300; //**change 120 for any number you want, it's the seconds **// 
 
function secondPassed() { 
 
    var minutes = Math.round((seconds - 30)/60); 
 
    var remainingSeconds = seconds % 60; 
 
    if (remainingSeconds < 10) { 
 
     remainingSeconds = "0" + remainingSeconds; 
 
    } 
 
    document.getElementById('countdown').innerHTML = minutes + ":" + remainingSeconds; 
 
    if (seconds == 0) { 
 
     clearInterval(countdownTimer); 
 
     document.getElementById('countdown').innerHTML = "Last chance!"; 
 
    } else { 
 
     seconds--; 
 
    } 
 
} 
 
    
 
var countdownTimer = setInterval('secondPassed()', 1000);
<!-- Modal start--> 
 
<div class="modal fade" id="ventanamdl" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> 
 
     <div class="modal-dialog modal-lg"> 
 
      <div class="modal-content"> <!-- to create more modals copy-paste from the div class "modal fade" until here, you can customize moda-content with css--> 
 
      <div class="modal-header"> 
 
       <h1>This is your last chance!</h1> 
 
       <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> 
 
      </div> 
 
      <div class="modal-body"> 
 
         
 
      <p>Your spot can't be reserved any longer! Click the button to join now! 
 
      <br> 
 
      <button id="btnjoin" type="submit" onclick="location.href='http://google.com';">Join!</button> 
 
      </p> 
 
       
 
      </div> 
 
      <div class="modal-footer"> 
 
      This is your last chance! 
 
      </div> 
 
      </div> 
 
     </div> 
 
     </div> 
 
<!-- Modal end--> 
 
    
 

 
<div id="bottomdiv"> 
 
    <p class="mytext2">Over 87 people have claimed their spot. Get yours before time runs out! <span id="countdown" class="timer"></span></p> 
 
</div>

Répondre

1

Il suffit d'utiliser

$('#ventanamdl').modal('show'); 

Pour votre but

var seconds = 300; //**change 120 for any number you want, it's the seconds **// 
function secondPassed() { 
    var minutes = Math.round((seconds - 30)/60); 
    var remainingSeconds = seconds % 60; 
    if (remainingSeconds < 10) { 
     remainingSeconds = "0" + remainingSeconds; 
    } 
    document.getElementById('countdown').innerHTML = minutes + ":" + remainingSeconds; 
    if (seconds == 0) { 
     clearInterval(countdownTimer); 
     document.getElementById('countdown').innerHTML = "Last chance!"; 
     $('#ventanamdl').modal('show'); 
    } else { 
     seconds--; 
    } 
} 

//now your setInterval call is ok 
var countdownTimer = setInterval(secondPassed, 1000); 

Votre appel setInterval n'a pas été correct.

Assurez-vous que votre bootstrap CSS et JS et jQuery sont correctement chargés.

+0

J'ai essayé celui-ci et réglé la minuterie à 10 secondes pour tester, mais après ces 10 secondes, le modal n'apparaît pas. Mais merci pour votre aide! Il pourrait aussi être quelque chose dans mon code html dans lequel je devrais vérifier demain puisque je suis fatigué. – Revers3

+0

Vous pouvez vérifier maintenant. J'ai édité la réponse. J'espère que ça va aider. –

+0

Est-ce que cela a fonctionné pour vous? –