显示确认框时禁用按键
Disable keypress when showing confirm box
我有一个使用大量按键事件的网站。对于某些操作,它还会打开一个 bootbox confirm box。确认框显示在透明层上,因此所有鼠标单击操作都不会执行,除非用户在引导框确认中单击取消或确定。但是,我还希望在确认框处于活动状态时禁用所有按键事件。
目前我有:
bootbox.confirm('blah blah'? function(yesPlease){
if(yesPlease) {
goAndClimbAVolcano();
}
});
我可以将此确认包装在 disableAllKeyPress()
和 enableAllKeyPress()
下,但我想知道是否有更简单的方法来实现此...
非常感谢任何指点。
我会使用布尔值来锁定事件。在您的确认消息出现之前放置一个 locked=true
,在它关闭之后放置一个 locked=false
。
那么您只需在您的关键事件函数上添加 if(locked) return;
。
希望对您有所帮助。
编辑:我知道有很多方法可以做到,我只是发布了一个不同的方法:)
我有一个使用大量按键事件的网站。对于某些操作,它还会打开一个 bootbox confirm box。确认框显示在透明层上,因此所有鼠标单击操作都不会执行,除非用户在引导框确认中单击取消或确定。但是,我还希望在确认框处于活动状态时禁用所有按键事件。
目前我有:
bootbox.confirm('blah blah'? function(yesPlease){
if(yesPlease) {
goAndClimbAVolcano();
}
});
我可以将此确认包装在 disableAllKeyPress()
和 enableAllKeyPress()
下,但我想知道是否有更简单的方法来实现此...
非常感谢任何指点。
我会使用布尔值来锁定事件。在您的确认消息出现之前放置一个 locked=true
,在它关闭之后放置一个 locked=false
。
那么您只需在您的关键事件函数上添加 if(locked) return;
。
希望对您有所帮助。
编辑:我知道有很多方法可以做到,我只是发布了一个不同的方法:)