javascript setInterval明确问题

时间:2013-10-07 09:19:47

标签: javascript jquery ajax

我在使用setInterval方法时遇到了一个问题。

当那时加载jsp页面(onload)时,我调用了一个setInterval(function(),time)方法。以下是我的jsp

的onload代码
var refreshLoop = 0;
var refreshFrequency = 900000;

$(window).load(function() {
    startRefresh();
}); 

function startRefresh() {
    refreshLoop = setInterval("refreshScreen()", refreshFrequency);
}

现在我在此页面上有拖放功能,将一行从div拖到另一个div。当我将我的行放到另一个表中时表刷新了。我做了ajax调用一滴发生在另一个div 现在我要做的是当我的drop id完成时我想清除这个setInterval并使其成为默认值。

例如:我已经在页面加载时设置了我的setInterval时间10分钟,所以每次10分钟后它都会加载页面。现在,一旦我拖放它,一旦我将行放到另一个div,它将开始计数10分钟。

我在JavaScript和ajax中完成了这个。

请就此问题提出建议。

3 个答案:

答案 0 :(得分:1)

window.clearInterval(refreshLoop)每当您想要清除间隔时。

答案 1 :(得分:1)

//try this code
 <script type="text/javascript">
    var refreshLoop = '';
    var refreshFrequency = 900000;

    $(window).load(function() {
        startRefresh();
    });    

    function startRefresh() {
        if(refreshLoop){
            clearInterval(refreshLoop);
            refreshLoop = '';
        }
        refreshLoop = setInterval("refreshScreen()", refreshFrequency);
    }
</script>

答案 2 :(得分:0)

如果要清除计时器,请使用:

clearInterval(refreshLoop);
startRefresh();