1
var checkTextValue = setTimeout(function() {
var textVal = $('p').text();
if (textVal == 'expectedValue'){
    callback();
} else {
    setTimeout(arguments.callee, 10);
}
},10);

我有这段代码,它工作得很好,但问题是在 Firefox 中,页面看起来像是在无休止地加载。

4

3 回答 3

1

看起来有点没用......我的意思是 setTimeout(checkTextValue, 10); - 你在那里设置什么?checkTextValue 只是一个超时 ID,没有别的......不知道为什么 FF 会无休止地加载,仅仅是因为代码有问题......

于 2009-10-27T00:18:24.727 回答
0

那是因为它在无休止地加载。基本上,您每十毫秒进行一次递归并启动另一个实例。如果有足够的时间,我认为也有可能用这段代码杀死你的浏览器。

尝试在您的输入字段上使用onchange-eventhandler。

于 2009-10-27T00:15:48.177 回答
-1

我认为这是一个recurssion的案例。谷歌“recusrion”以获得更多线索。只是在开玩笑。checkTextValue 将无限期运行,除非该值为“expectedValue”。

于 2009-10-27T00:16:42.637 回答