[SPIP Zone] [Spip-zone-commit] r30863 - /_plugins_/nyroceros/js/jquery.nyroModal-1.5.0.js

Lo ...

Evites de modifier le contenu d'une lib qui est issue d'un développement externe... (elle ne nous appartient pas et ne devrait à mon sens d'ailleurs ne pas se trouver sur la zone) ...

Car tu vas casser irrémédiablement l'up d'une future version de cette lib ...

D'ailleurs ton pb n'est pas réellement lié aux modales... mais à flash...

La solution : mettre tes flash en wmode transparent devrait régler ton pb...

à noter que nyromodal est bien foutu de ce coté et qu'il est blindé de pipelines donc pas la peine d'en modifier le core

++

kent1

Le 13 août 09 à 01:49, xdjuj@apsulis.com a écrit :

Author: xdjuj@apsulis.com
Date: Thu Aug 13 01:49:37 2009
New Revision: 30863

Log:
Correction du BUG de z-index reproductible sur les embed, object et select.

Sur QUASI TOUTES les modales l'ouverture de la modale contenant une image se fait SOUS le embed de la page principale (embed vidéo flash par exemple).

En cas de vidéo affichée dans la page, la modale est donc "transpercée" par la vidéo.

Il s'agit donc d'appliquer une visibilty hidden sur les embed/object/select au moment du lancement de la modale. Et de rendre cette visibilité à la fermeture.

TODO :
----------
Externaliser ces deux petits bouts de code, par exemple sur un événement "click" sur le sélecteur d'ouverture et sur le click au sélecteur de fermeture.
Cela permettrait la surcharge et donc de bénéficier des mises à jours faciles de la modale officielle.

PS :
-----
Ce correctif pourrait être appliqué sur les autres modales (Thicbox et autres lightbox diverses)

Modified:
   _plugins_/nyroceros/js/jquery.nyroModal-1.5.0.js

Modified: _plugins_/nyroceros/js/jquery.nyroModal-1.5.0.js

--- _plugins_/nyroceros/js/jquery.nyroModal-1.5.0.js (original)
+++ _plugins_/nyroceros/js/jquery.nyroModal-1.5.0.js Thu Aug 13 01:49:37 2009
@@ -331,6 +331,12 @@
      return;
    debug('processModal');
    modal.started = true;
+ /*
+ TODO Externaliser ce bout de code, par exemple sur un événement "click" sur le sélecteur d'ouverture
+ Permettrait la surcharge et donc de bénéficier des mises à jours faciles de la modale officielle
+ */
+ $('embed, object, select').css({ 'visibility' : 'hidden' });
+
    setDefaultCurrentSettings(settings);
    if (!modal.full)
      modal.blockerVars = modal.blocker = null;
@@ -1366,6 +1372,12 @@
      .css(currentSettings.css.wrapper)
      .append(modal.content);
    showContentOrLoading();
+ /*
+ TODO Externaliser ce bout de code, par exemple sur un événement "click" sur le sélecteur de fermeture = class="nyroModalClose" id="closeBut"
+ Permet la surcharge et donc de bénéficier des mises à jours faciles de la modale officielle
+ */
+ $('embed, object, select').css({ 'visibility' : 'visible' });
+
  }

  function endRemove() {

_______________________________________________
Spip-zone-commit@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone-commit

:slight_smile:

Le 13 août 09 à 02:59, Drouet Quentin a écrit :

Lo ...

Evites de modifier le contenu d'une lib qui est issue d'un développement externe... (elle ne nous appartient pas et ne devrait à mon sens d'ailleurs ne pas se trouver sur la zone) ...

C'est justement pour ça que j'ai laissé un TODO dans le commentaire de commit. Pour attirer l'attention.
Et que j'ai laissé des pattern "TODO" dans le code (pour ceux qui utilisent cette syntaxe) aux deux endroits modifiés :slight_smile:

Car tu vas casser irrémédiablement l'up d'une future version de cette lib ...

D'ailleurs ton pb n'est pas réellement lié aux modales... mais à flash...

La solution : mettre tes flash en wmode transparent devrait régler ton pb...

C'est une solution oui, mais de ce que j'ai pu lire (ou voir, dans SexyLighbox par exemple), elle ne semble pas universelle, alors que le hide temporaire, oui :slight_smile:

à noter que nyromodal est bien foutu de ce coté et qu'il est blindé de pipelines donc pas la peine d'en modifier le core

Idem, pas eu le temps de regarder dans le détail, j'ai vu effectivement que des surcharges semblaient possibles, notamment dans vos fichier mis à côté dans le plugin et ça c'est cool. Dans mon todo je suggère l'utilisation des sélecteurs connus pour open / close par nyro.
Je pense qu'il ne faut pas non plus oublier les événements claviers genre ESC ou je sais pas ce qui est utilisé par nyro.

Question de temps et de compétences quoi... J'ai pas tout de suite réussi à externaliser, alors j'ai commité dedans ET j'ai prévenu que c'était mal dans le commit :stuck_out_tongue:

Je re-précise que c'est un soucis qui est présent sur les autres modales, et que tous les navs PC (windows/linux) semblent le reproduire, pas les navs Mac OS... :stuck_out_tongue:

Ca pourrait sinon peut être faire l'objet d'un plugin patch_wmode qui serviraient à toutes les modales ? Je sais po...

Idées/compétences bienvenues ! :wink:

++

kent1

Le 13 août 09 à 01:49, xdjuj@apsulis.com a écrit :

Author: xdjuj@apsulis.com
Date: Thu Aug 13 01:49:37 2009
New Revision: 30863

Log:
Correction du BUG de z-index reproductible sur les embed, object et select.

Sur QUASI TOUTES les modales l'ouverture de la modale contenant une image se fait SOUS le embed de la page principale (embed vidéo flash par exemple).

En cas de vidéo affichée dans la page, la modale est donc "transpercée" par la vidéo.

Il s'agit donc d'appliquer une visibilty hidden sur les embed/object/select au moment du lancement de la modale. Et de rendre cette visibilité à la fermeture.

TODO :
----------
Externaliser ces deux petits bouts de code, par exemple sur un événement "click" sur le sélecteur d'ouverture et sur le click au sélecteur de fermeture.
Cela permettrait la surcharge et donc de bénéficier des mises à jours faciles de la modale officielle.

PS :
-----
Ce correctif pourrait être appliqué sur les autres modales (Thicbox et autres lightbox diverses)

Modified:
  _plugins_/nyroceros/js/jquery.nyroModal-1.5.0.js

Modified: _plugins_/nyroceros/js/jquery.nyroModal-1.5.0.js

--- _plugins_/nyroceros/js/jquery.nyroModal-1.5.0.js (original)
+++ _plugins_/nyroceros/js/jquery.nyroModal-1.5.0.js Thu Aug 13 01:49:37 2009
@@ -331,6 +331,12 @@
      return;
    debug('processModal');
    modal.started = true;
+ /*
+ TODO Externaliser ce bout de code, par exemple sur un événement "click" sur le sélecteur d'ouverture
+ Permettrait la surcharge et donc de bénéficier des mises à jours faciles de la modale officielle
+ */
+ $('embed, object, select').css({ 'visibility' : 'hidden' });
+
    setDefaultCurrentSettings(settings);
    if (!modal.full)
      modal.blockerVars = modal.blocker = null;
@@ -1366,6 +1372,12 @@
      .css(currentSettings.css.wrapper)
      .append(modal.content);
    showContentOrLoading();
+ /*
+ TODO Externaliser ce bout de code, par exemple sur un événement "click" sur le sélecteur de fermeture = class="nyroModalClose" id="closeBut"
+ Permet la surcharge et donc de bénéficier des mises à jours faciles de la modale officielle
+ */
+ $('embed, object, select').css({ 'visibility' : 'visible' });
+
  }

  function endRemove() {

_______________________________________________
Spip-zone-commit@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone-commit

_______________________________________________
Spip-zone-commit@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone-commit