2010-11-18 5 views
0

J'ai un problème avec l'utilisation de jQuery pour une fenêtre pop-up. J'ai une classe appelée "clicker".jQuery - classes en cascade et problèmes de fonctions on-click

Si vous cliquez sur le "showHideBox()" fonction est appelée:

$(".clicker").click(function(){ 
    showHideBox(); 
}); 

fonction showHideBox montre boîte - $(".box").fadeIn(700) ou cacher lorsque vous cliquez dessus à nouveau - $(".box").css("display","none").

.box div est positionné fixe avec un indice z élevé pour fournir une sorte d'effet de boîte à lumière. Le .box div contient des bits interactifs cliquables. Le .box div est assez grand et chevauche partiellement le .clicker div. Le problème est que lorsque vous cliquez sur une zone de la div div. Qui chevauche le div .clicker, jQuery agit comme si je cliquais sur le .clicker.

Donc, il faut vraiment écouter la fonctionnalité .clicker - même si je donne la fonction .box css("display","block").

S'il vous plaît avis si quelqu'un connaît une solution pour cela.

Merci beaucoup à l'avance.

+0

Dans le code HTML, la .box div est-elle dans le .clicker? – manraj82

+0

Quelle que soit la raison pour laquelle vous n'utilisez pas les méthodes show()/hide() au lieu de css ("display", ...)? –

+1

Serait-il plus facile de comprendre le flux, si vous publiez vos codes? – Starx

Répondre

0

Vous pouvez essayer d'ajouter un div transparent derrière la boîte div qui couvrira tout l'écran. Si cela ne fonctionne pas, essayez d'être clair sur les bulles d'événements jQuery. Faites-moi savoir si l'un de ces travaux.