2010-06-01 30 views
1

我有以下用例:jQuery:临时冻结/禁用所有事件?

  • 与一些按钮
  • 当用户 点击一个按钮时,弹出显示 和背景的div淡出 〜0.5的不透明度
一个DIV

问题是当弹出窗口进来时,用户仍然可以点击背景按钮。此时,我可以暂时删除整个DIV,但我不想这样做。无论如何,我可以禁用所有先前附加的事件,然后将事件处理程序添加到当前弹出窗口? (我的意思是像一个关闭按钮应该仍然在弹出窗口)任何建议?

回答

1

听起来像你需要一个modal弹出。有很多jQuery插件可以做到这一点,或者你可以检出this tutorial

1

您可以将每个具有附加事件的元素存储到数组中,然后遍历它们并将它们循环。关闭弹出窗口后,您可以重新登录bind()

+0

+1这个模态对话框选项。我尝试了这种方法,但不知怎的,以为它可能会变得沉重。 – Legend 2010-06-01 17:12:30

1

您可以使用内置的JQuery UI

​​

$("#dialog-modal").dialog({ 
        modal: true 
        }); 
+0

对于该建议+1。谢谢... – Legend 2010-06-01 17:12:10