首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaScript clearInterval

JavaScript clearInterval
EN

Stack Overflow用户
提问于 2014-07-11 05:07:27
回答 2查看 88关注 0票数 0

我想让一个div在按钮点击时变得可见,并有一个setInterval附加句点来显示加载。我也想要一个按钮来清除该间隔,并隐藏显示的div。

这是一个小提琴http://jsfiddle.net/4qx4r/4/

代码如下:

代码语言:javascript
复制
function ProgressBar(){
   var div;
    var start = function(){
               var count = 0,
               div = $('#divNotification').show().text('Uploading').css('align','center'),
                   originalText = div.text(),
                   count = 0;

               var beginCount = setInterval(function(){
                   var newText = div.text() + '.';
                   div.text(newText);
                   count++;
                   if(count > 5){
                     div.text(originalText);
                     count =0;
                   }
                   console.log(count);
               },500)
       }
       var stop = function(){
           console.log('stop');
           div.hide();
           window.clearInterval(beginCount);
       }
   this.start = start;
   this.stop = stop;
}

var progressBar = new ProgressBar();
$('#btnStart').click(function(){
   progressBar.start();  
});
$('#btnStop').click(function(){
   progressBar.stop();
});

当前,当我点击btnStop时,我得到‘`cannot property hide of undefined’。我怎样才能停止间隔并隐藏div呢?

EN

回答 2

Stack Overflow用户

发布于 2014-07-11 05:09:43

您将在函数中设置var beginCount,因此该变量只能在该函数中访问。

尝试在外部声明该变量,或者干脆删除var部件。

我会将其添加到var div声明的旁边

此外,您还需要用分号替换逗号,并且您的div未设置为该对象,请尝试以下操作:

代码语言:javascript
复制
var count = 0;
div = $('#divNotification');
div.show().text('Uploading').css('align','center');
originalText = div.text();
count = 0;

http://jsfiddle.net/4qx4r/6/

票数 5
EN

Stack Overflow用户

发布于 2014-07-11 05:15:53

这是可行的:http://jsfiddle.net/W8ySn/3/

我分隔了初始的div赋值:

代码语言:javascript
复制
    div = $('#divNotification');
           var count = 0;                                      
           div.show().text('Uploading editor').css('align','center');
               originalText = div.text();
               count = 0;
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24686288

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档