Partage
  • Partager sur Facebook
  • Partager sur Twitter

arreter execution fonction ajax jquery appeler par timer

arreter stopper execution fonction

    12 mai 2010 à 3:55:39

    Bonjour a tous
    j'utilise cette fonction pour rafraichir ma div, je souhaite arreter la fonction en cliquant sur un lien,
    je n'y arrive pas,

    voici ma fonction ajax jquery



    <script type="text/javascript"> 
    function recevoir_prive(envoyeur,receveur,action) { 
        //refresh avc jquery 
     $(document).ready(function truc() {    
       var cont_prive = setInterval(function truc() { 
          $("#chat_prive").load('get_message_prive.php?pseudo_envoyeur=' + envoyeur + '&pseudo_receveur=' + receveur ); 
          chat_prive.scrollTop = chat_prive.scrollHeight; 
     
       }, 1000); 
        
    }); 
     
    } 
     
    </script>
    


    j'ai essayé ça :

    <a href="javascript:clearInterval(cont_prive);">stopper</a>
    



    mais marche pas


    Merci de m'aider
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      12 mai 2010 à 9:16:15

      Ta variable "cont_prive" créée à l'intérieur de la fonction a une porté limitée.
      En la déclarant dehors, elle devrait être globale.
      <script type="text/javascript"> 
      var cont_prive = null;
      
      function recevoir_prive(envoyeur,receveur,action) { 
          //refresh avc jquery 
       $(document).ready(function truc() {    
         cont_prive = setInterval(function truc() { // pas de "var"
            $("#chat_prive").load('get_message_prive.php?pseudo_envoyeur=' + envoyeur + '&pseudo_receveur=' + receveur ); 
            chat_prive.scrollTop = chat_prive.scrollHeight; 
       
         }, 1000); 
          
      }); 
       
      } 
      </script>
      
      • Partager sur Facebook
      • Partager sur Twitter
        14 mai 2010 à 6:07:32

        salut
        désolé, ça ne marche pas
        c'est quand meme bizarre!


        Merci de m'aider
        • Partager sur Facebook
        • Partager sur Twitter
          14 mai 2010 à 9:29:25

          Ba c'est normal... tu ne peux pas arrêter le rafraichissement il me semble, tout simplement car c'est au chargement de la page que tu le déclare. En gros toute les secondes ca va se rafraichir sans s'arrêter à partir du moment ou tu arrive sur ta page.

          essais quelque chose dans ce genre la :

          var cont_prive = null;
          var test = false;

          $('#IdDeTonBouton').click(function() {
            test = true;
          });
          
          if(test==false){
           $(document).ready(function truc() {    
             cont_prive = setInterval(function truc() { // pas de "var"
                $("#chat_prive").load('get_message_prive.php?pseudo_envoyeur=' + envoyeur + '&pseudo_receveur=' + receveur ); 
                chat_prive.scrollTop = chat_prive.scrollHeight; 
           
             }, 1000); 
              }
          }); 
           
          }
          


          Ce n'est qu'une idée mais je penses que ca devrait marcher
          • Partager sur Facebook
          • Partager sur Twitter
            14 mai 2010 à 12:36:40

            Utilise clearInterval pour arrêter l'appel toutes les xxx millisecondes.
            http://www.w3schools.com/jsref/met_win_clearinterval.asp
            • Partager sur Facebook
            • Partager sur Twitter

            arreter execution fonction ajax jquery appeler par timer

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown