我正在使用setInterval来检查p(html段落)是否具有某个文本值。如果它有它我想清除间隔一个继续代码流。我在jQuery插件中使用它,所以如果段落有tat文本值我想清除间隔然后继续回调函数。 所以我试过这样的事情:

var checkTextValue = setInterval(function(){
                          var textVal = $('p').text();
                          if(textVal == 'expectedValue'){
                              clearInterval(checkTextValue);
                              callback();
                          } 
                     },10);

和回调函数它是一个简单的警报。 我的问题是无休止地调用警报。如何编写我的代码才能正确完成?谢谢。

有帮助吗?

解决方案

使用setTimeout而不是setInterval。

类似的东西:

var checkTextValue = setTimeout(function() {
    var textVal = $('p').text();
    if (textVal == 'expectedValue'){
        callback();
    } else {
        setTimeout(arguments.callee, 10);
    }
},10);
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top