Javascript jQuery:暂时冻结/禁用所有事件?

Javascript jQuery:暂时冻结/禁用所有事件?,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,我有以下用例: 带按钮的div 当用户 单击按钮,将显示一个弹出窗口 背景div被淡出 到0.5不透明度 问题是当弹出窗口出现时,用户仍然能够单击背景按钮。此时,我可以暂时删除整个DIV,但我不想这样做。我是否可以禁用所有以前附加的事件,然后仅向当前弹出窗口添加事件处理程序?(我的意思是像关闭按钮这样的东西仍然可以在弹出窗口上工作)有什么建议吗?听起来你需要一个弹出窗口。有许多jQuery插件可以实现这一点,或者您可以签出。您可以将每个元素和附加的事件存储到一个数组中,然后循环遍历它们并取消

我有以下用例:

  • 带按钮的div
  • 当用户 单击按钮,将显示一个弹出窗口 背景div被淡出 到0.5不透明度

问题是当弹出窗口出现时,用户仍然能够单击背景按钮。此时,我可以暂时删除整个DIV,但我不想这样做。我是否可以禁用所有以前附加的事件,然后仅向当前弹出窗口添加事件处理程序?(我的意思是像关闭按钮这样的东西仍然可以在弹出窗口上工作)有什么建议吗?

听起来你需要一个弹出窗口。有许多jQuery插件可以实现这一点,或者您可以签出。

您可以将每个元素和附加的事件存储到一个数组中,然后循环遍历它们并取消绑定()。关闭弹出窗口后,您可以重新绑定()它们。

您可以使用JQuery UI中内置的模式对话框选项


+这是我的荣幸。我尝试过这种方法,但不知怎的,我认为它最终会很重。
$("#dialog-modal").dialog({
                   modal: true
                   });