Project

General

Profile

Evolution #3950

ajaxCallback.js : Déporter une fonction dans le plugin Mediabox et changer le bind sur a.popin

Added by placido . over 2 years ago. Updated about 1 year ago.

Status:
Fermé
Priority:
Normal
Assignee:
-
Category:
javascript
Target version:
Start date:
05/22/2017
Due date:
% Done:

100%

Estimated time:
0.25 h
Resolution:
fixed

Description

- il me semble que

https://core.spip.net/projects/spip/repository/revisions/23551/entry/spip/prive/javascript/ajaxCallback.js#L1036 et
https://core.spip.net/projects/spip/repository/revisions/23551/entry/spip/prive/javascript/ajaxCallback.js#L1051

ont plutôt leur place dans la fonction mediaboxInit(), quelque part par là :

https://core.spip.net/projects/mediabox/repository/revisions/104215/entry/javascript/spip.mediabox.js#L46

On peut en profiter pour remplacer le bind .click() par un .off('click.modal').on('click.modal') (par exemple).
En effet, un lien a.popin en dehors d'un bloc ajaxé, accumule inutilement un nouvel écouteur d'événements click à rechargement de bloc, ce qui provoque autant d'ouvertures de modal si l'on décide finalement de cliquer dessus.

Associated revisions

Revision 24106 (diff)
Added by cedric@yterium.com about 1 year ago

Fix #3950 : deplacer ces init dans le plugin mediabox

History

#1 Updated by Anonymous about 1 year ago

  • Status changed from Nouveau to Fermé
  • % Done changed from 0 to 100

Appliqué par commit r24106.

#2 Updated by cedric - about 1 year ago

  • Resolution set to fixed

Init deplacées, pour la modif de l'ecouteur je suis pas sur d'avoir compris le problème et le fix, mais n'hésite pas à réouvrir avec un patch ;)

#3 Updated by placido . about 1 year ago

Pour la fonction en question, on peut reprendre le principe de filtrer les éléments en avec un .not('.hasbox') .... .addClass('hasbox') pour n'appliquer qu'une fois la mediabox sur les liens a.popin (sinon ils cumulent les écouteurs d'événements à chaque ajaxReload).

J'espère que c'est plus clair dit comme ça :)

Also available in: Atom PDF