只运行一次函数(显示toast-like消息)javascript/jquery

只运行一次函数(显示toast-like消息)javascript/jquery,javascript,jquery,Javascript,Jquery,我在for循环中有一个函数,用于显示消息。现在我的问题是,是否可以只显示一次该消息?我听说过jquery中的.one函数,但不知道在这种情况下是否可以实现 for(var in variable){ $('.confirmToast').html("Can't filter your selection").fadeIn(400).delay(3000).fadeOut(400);//Can this be run only once? } 如果您绝对需要它处于循环中,并且无法更改循环的

我在for循环中有一个函数,用于显示消息。现在我的问题是,是否可以只显示一次该消息?我听说过jquery中的.one函数,但不知道在这种情况下是否可以实现

for(var in variable){
   $('.confirmToast').html("Can't filter your selection").fadeIn(400).delay(3000).fadeOut(400);//Can this be run only once?
}

如果您绝对需要它处于循环中,并且无法更改循环的条件,我会将消息放入If语句中。首先将变量设为false,将消息放入if语句中,该语句在变量为false时运行,然后将变量设为true,这样它就不会在下一个循环中运行。我要在下面试一下

messageOnce = false;

for(var in variable){
if (messageOnce = false) {
$('.confirmToast').html("Can't filter your selection").fadeIn(400).delay(3000).fadeOut(400);//Can this be run only once?
messageOnce = true;
}
}
您可以将for循环更改为使用$。jquery中的每个函数通过返回false来中断循环

e、 g


希望这有帮助:

如果希望代码执行一次,为什么要执行多次?只是不要把它放在一个循环中…?它很复杂。它的代码有1000多行,很难全部解释清楚,但事实就是这样,我只是问它是否可能=
var arr = ["one", "two", "three", "four", "five"];
        $.each(arr, function (index, value) {
            $('.confirmToast').html("Can't filter your selection").fadeIn(400).delay(3000).fadeOut(400);
            return false;
        });