2 votes

Le survol ne cache pas le corps lors du premier clic ouvert

J'utilise le clickover bootstrapX dont la démonstration est faite ici : http://www.leecarmichael.com/bootstrapx-clickover/examples.html

<img class="img-circle" src="something" alt="something" 
rel="clickover" 
onclick="loadData(this, somedata)" /> 

loadData(element, somedata){
      if(!$(element).attr('data-content')) {
         // build clickover flyout html
         $(element).clickover('show');
      } else {
         // do nothing clickover is already attached
      }

 }

Ça marche... presque.

Lorsque je clique sur l'élément image pour la première fois, je dois fermer le clickover en cliquant sur l'image, sinon il ne se ferme pas, même si je clique pour ouvrir d'autres clickovers ou si je clique simplement sur le corps de la page.

Tous les clics suivants qui montrent le clickover peuvent être cachés par un clic n'importe où ailleurs, ce qui est la façon dont cela devrait fonctionner. J'ai essayé de fermer tous les autres clics, de dissocier l'événement de clic et autres, sans succès. J'ai besoin de lier l'événement loadData en html et non en javascript comme le onShown du clickover car ce code tourne en boucle et ces données sont spécifiques à l'élément qui n'est pas très identifiable.

Une idée sur la façon dont je pourrais réparer cela ?

1voto

Bass Jobsen Points 18262

Le comportement que vous décrivez semble être le même pour global_close=0 . $(element).clickover('show'); ne pas définir d'options par défaut.

Utilisez $('.img-square').clickover().click(); à la place de $('.img-square').clickover('show') voir : http://bootply.com/66601 y https://github.com/lecar-red/bootstrapx-clickover/issues/42

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X