2010-06-01 4 views
1

je l'usecase suivante:jQuery: Gel/Désactivation temporaire de tous les événements?

  • Un div avec quelques boutons
  • Lorsque l'utilisateur clique sur un bouton, une fenêtre contextuelle est affichés et la div de fond est masqué à 0,5 opacité

Le problème est que lorsque le popup arrive, l'utilisateur est toujours capable de cliquer sur les boutons d'arrière-plan. À ce stade, je peux retirer temporairement la totalité du DIV mais je ne veux pas le faire. Y at-il de toute façon que je peux désactiver tous les événements précédemment attachés et puis ajouter des gestionnaires d'événement UNIQUEMENT au popup actuel? (Je veux dire quelque chose comme un bouton de fermeture devrait encore fonctionner sur un popup) Des suggestions?

Répondre

1

Vous semblez avoir besoin d'une fenêtre contextuelle modal. Il existe de nombreux plugins jQuery qui font cela, ou vous pouvez consulter this tutorial.

1

Vous pouvez stocker chaque élément avec un événement attaché dans un tableau, puis les parcourir et les unbind(). À la fermeture du popup, vous pouvez les bind().

+0

+1 pour cela. J'ai essayé cette approche mais j'ai pensé que ça pourrait finir par être lourd. – Legend

Questions connexes