2016-05-03 8 views
1

こんにちは、私は停止することができますsetIntervalは、他の関数で呼び出されたclearIntervalを使用して関数から呼び出されますか?他の関数で呼び出されたclearIntervalを使用して関数から呼び出されたsetIntervalを停止する方法

私は同じ機能を使用してxをクリックしてポップアップウィンドウを閉じるため、ポップアップウィンドウを閉じてタイマーを停止したいので、機能的にはsetIntervalを使用する必要があります。

JS:

function onlinechat(id) { 
     $.ajax({ 
      .... 
      success: function(data){ 
       $(".myclass").append(data); 
       var stopChat = window.setInterval(function() { 
        loadmore(id); 
       }, 2500); 
      } 
     });  
    return false; 
} 

function loadmore(id){ 
    ..... 
} 

function close_online_chat(){ 
    $('.lobibox-window').hide(); 
    clearInterval(stopChat); 
} 

HTML:

<div class="lobibox-window"> 
    <div class="lobibox-header"> 
     <span class="btn-close" onclick="close_online_chat();return false;">×</span> 
    </div> 
    <div class="lobibox-body" style="height: 510px;"> 
     <div class="myclass"></div> 
    </div> 
</div> 

答えて

0

あなたが最初のグローバル変数として変数を定義する必要があります。

var stopChat; //define as global variable 
function onlinechat(id) { 
     $.ajax({ 
      .... 
      success: function(data){ 
       $(".myclass").append(data); 
       //don't use var here 
       stopChat = window.setInterval(function() { 
        loadmore(id); 
       }, 2500); 
      } 
     });  
    return false; 
} 

function loadmore(id){ 
    ..... 
} 

function close_online_chat(){ 
    $('.lobibox-window').hide(); 
    clearInterval(stopChat); 
} 
+0

ご協力いただきありがとうございます。 – CHARLI

関連する問題