我正在做一个简单的聊天,它可以在不同的浏览器中运行,但setTimeout
会一直触发,我希望它只触发一次,因为继续触发毫无意义,而且我相信它也会给服务器造成更大的压力。
这是从其他地方调用的函数:
function chat_load() {
$.post('chat.php', {stage:'load'}, function(data) {
$('#window').html(data);
setTimeout("chat_load();", 1000);
});
}
我尝试了以下类似的方法,但它一直在开火。此外,该功能应该仅在单击某个按钮时触发,这种情况每隔一段时间才会发生一次。
var c = 0;
function chat_load() {
$.post('chat.php', {stage:'load'}, function(data) {
$('#window').html(data);
var t = setTimeout("chat_load();", 1000);
c++;
if (c == 3) {
clearTimeout(t);
}
});
}