DIV应该只刷新一次

时间:2015-11-17 13:58:50

标签: javascript jquery html css

success: function (result) {
    if (result == 1) {
        var auto_refresh = setInterval(function () {
            $('#myDiv').fadeOut('slow', function () {
                $(this).load('/echo/json/', function () {
                    $(this).fadeIn('slow');
                });
            });
        }, 1025544);

    }
}

成功功能的朋友我只需要刷新一次myDiv DIV,但是就像上面的代码一样,DIV会一直淡出并连续淡入而不应该只运行一次

2 个答案:

答案 0 :(得分:5)

setInterval()重复调用函数或执行代码段,每次调用之间有固定的时间延迟。在clearInterval被调用之前,它将继续这样做 最简单的方法是使用setTimeout(),这只会延迟在指定时间内调用的函数:

var auto_refresh = setTimeout(function() {
  $('#myDiv').fadeOut('slow', function() {
    $(this).load('/echo/json/', function() {
      $(this).fadeIn('slow');
    });
  });
}, 1025544);

答案 1 :(得分:0)

使用变量名称auto_refresh表示您希望它重复。还 - > 1025544ms = 17分钟。所以每隔17分钟刷新一次。

如果你想要它不显示,等待17分钟然后显示,使用 @Jacod Grays 回答。

如果您只想展示,请删除setInterval,如下所示: -

success: function (result) {
    if (result == 1) {
       $('#myDiv').fadeOut('slow', function () {
           $(this).load('/echo/json/', function () {
              $(this).fadeIn('slow');
           });
       });
    }
}