我的网页具有自动刷新功能。使用计时器实现自动刷新。
GInterValId = window.setInterval("AutoRefresh()",interval);
用户还可以通过单击页面上的某些按钮来执行某些操作。自动刷新功能和用户操作正在创建竞争条件。
我想阻止两个操作(自动刷新和按钮操作)同时发生。
我该怎么做?
答案 0 :(得分:3)
怎么样:
busy = false;
function AutoRefresh() {
if( busy ) return;
busy = true;
...
...
...
busy = false;
}
function ButtonOperation() {
if( busy ) return;
busy = true;
...
...
...
busy = false;
}
答案 1 :(得分:0)
我认为你真正想要发生的是在页面自动刷新之前完成按钮操作。在这种情况下,我会让您的按钮操作函数将操作添加到队列中,然后让AutoRefresh函数在执行刷新之前运行操作。