How could something equivalent to lock
in C# be implemented in JavaScript?
So, to explain what I'm thinking a simple use case is:
User clicks button B
. B
raises an onclick event. If B
is in event-state
the event waits for B
to be in ready-state
before propagating. If B
is in ready-state
, B
is locked and is set to event-state
, then the event propagates. When the event's propagation is complete, B
is set to ready-state
.
I could see how something close to this could be done, simply by adding and removing the class ready-state
from the button. However, the problem is that a user can click a button twice in a row faster than the variable can be set, so this attempt at a lock will fail in some circumstances.
Does anyone know how to implement a lock that will not fail in JavaScript?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…