模式窗口关闭操作无法清除Interval

我使用基金会的模式窗口,每打开一次,我都会有一个警告。 重点是我想关闭模式窗口关闭时的时间间隔。 我尝试了以下方法,但clearInterval函数似乎不起作用(模式关闭后警告仍然发生):

$(document).on('opened', '[data-reveal]', function () {
            var interval = setInterval(function(){alert("O.K.");}, 3000);
        if($("div#automate_message").height() > 100) { interval; }
});
        $(document).on('close', '[data-reveal]', function () {
        clearInterval(interval);
});

在您的代码中,当您尝试clearInterval时,变量interval超出了范围。

所以,首先全局声明变量interval

全局声明的变量称为:全局变量 - 其值在整个程序中都可访问和修改。

尝试这个:

var interval = null;
$(document).on('opened', '[data-reveal]', function () {
    interval = setInterval(function(){alert("O.K.");}, 3000);
    if($("div#automate_message").height() > 100) { interval; }
});

$(document).on('close', '[data-reveal]', function () {
    clearInterval(interval);
});

将变量interval初始化为全局变量,即全局范围,以便可以随处访问。

//global scope
var interval = null;

$(document).on('opened', '[data-reveal]', function () {

        //local scope

        interval = setInterval(function(){alert("O.K.");}, 3000);
        if($("div#automate_message").height() > 100) { interval; }
});

$(document).on('close', '[data-reveal]', function () {
        clearInterval(interval);
});
链接地址: http://www.djcxy.com/p/95039.html

上一篇: can't clearInterval on modal window close action

下一篇: Set variable to false at the end of countdown timer