Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Surcharge sérialisée de domready

6 réponses
Avatar
Pierre Goiffon
Bonjour, voici un prb pour lequel je n'ai pas vraiment de solution...

Ma société édite un produit, les pages générées peuvent être
personnalisées de différentes manières, et par exemple l'ajout de
javascript dans le head - appelons les "scripts utilisateurs".
Les pages générées comportent déjà des scripts lancés en
$(document).ready (JQuery est présent dans les pages) qui entre autre
assure une esthétique cohérente de l'affichage - appelons les "scripts
produit".

Si on utilise $(document).ready dans les scripts utilisateurs, que le
traitement est un peu coûteux et que l'on a un navigateur ancienne
génération (IE 6 par exemple...) alors il peut arriver que les scripts
produits s'exécutent après et que l'on voit à l'écran les modifications
du dom.

Je cherche donc un moyen de laisser une porte ouverte pour que les
auteurs de scripts utilisateur puissent ajouter du traitement lancé sur
domready, mais exécuté après l'exécution des scripts produits.

Une idée ?

6 réponses

Avatar
Olivier Masson
Le 20/01/2012 14:36, Pierre Goiffon a écrit :
Bonjour, voici un prb pour lequel je n'ai pas vraiment de solution...

Ma société édite un produit, les pages générées peuvent être
personnalisées de différentes manières, et par exemple l'ajout de
javascript dans le head - appelons les "scripts utilisateurs".
Les pages générées comportent déjà des scripts lancés en
$(document).ready (JQuery est présent dans les pages) qui entre autre
assure une esthétique cohérente de l'affichage - appelons les "scripts
produit".

Si on utilise $(document).ready dans les scripts utilisateurs, que le
traitement est un peu coûteux et que l'on a un navigateur ancienne
génération (IE 6 par exemple...) alors il peut arriver que les scripts
produits s'exécutent après et que l'on voit à l'écran les modifications
du dom.

Je cherche donc un moyen de laisser une porte ouverte pour que les
auteurs de scripts utilisateur puissent ajouter du traitement lancé sur
domready, mais exécuté après l'exécution des scripts produits.

Une idée ?



Sincèrement, j'ai du mal à vraiment comprendre, mais un loader ne
t'aiderait pas ?
Avatar
SAM
Le 20/01/12 14:36, Pierre Goiffon a écrit :
Bonjour, voici un prb pour lequel je n'ai pas vraiment de solution...

Ma société édite un produit, les pages générées peuvent être
personnalisées de différentes manières, et par exemple l'ajout de
javascript dans le head - appelons les "scripts utilisateurs".
Les pages générées comportent déjà des scripts lancés en
$(document).ready (JQuery est présent dans les pages) qui entre autre
assure une esthétique cohérente de l'affichage - appelons les "scripts
produit".



Où peut-on voir cet animal étrange ?

--
Stéphane Moriaux avec/with iMac-intel
Avatar
Pierre Goiffon
Le 20/01/2012 15:41, Olivier Masson a écrit :
Sincèrement, j'ai du mal à vraiment comprendre, mais un loader ne
t'aiderait pas ?



J'ai un code JS A qui doit absolument être le premier à s'exécuter en
domready et que je ne veut pas modifier.
Je veux ajouter du JS B qui soit aussi exécuté en DOMready, mais je veux
qu'il s'exécute après A.

Bref je veux séquencer :
Domready -> A -> B
Sachant que je ne peux modifier A.

Plus clair ?
Avatar
Pierre Goiffon
Le 20/01/2012 15:59, SAM a écrit :
Ma société édite un produit, les pages générées peuvent être
personnalisées de différentes manières



Où peut-on voir cet animal étrange ?



Pas simplement non mes excuses.
Et pour le caractère étrange, c'est une problématique que toute
application web personnalisable rencontre, je n'ai pas encore vu de
solution mise en place.
Avatar
Olivier Masson
Le 23/01/2012 14:23, Pierre Goiffon a écrit :
Le 20/01/2012 15:41, Olivier Masson a écrit :
Sincèrement, j'ai du mal à vraiment comprendre, mais un loader ne
t'aiderait pas ?



J'ai un code JS A qui doit absolument être le premier à s'exécuter en
domready et que je ne veut pas modifier.
Je veux ajouter du JS B qui soit aussi exécuté en DOMready, mais je veux
qu'il s'exécute après A.

Bref je veux séquencer :
Domready -> A -> B
Sachant que je ne peux modifier A.

Plus clair ?



Absolument. C'est donc bien un des rôles des loaders JS.
Un comparatif complet et mis à jour ici :
https://spreadsheets.google.com/lv?key=tDdcrv9wNQRCNCRCflWxhYQ&toomany=true#gid=0
(http://tinyurl.com/4v6w263 au cas où)
Avatar
Pierre Goiffon
Le 23/01/2012 15:54, Olivier Masson a écrit :
Bref je veux séquencer :
Domready -> A -> B
Sachant que je ne peux modifier A.

Plus clair ?



Absolument. C'est donc bien un des rôles des loaders JS.
Un comparatif complet et mis à jour ici :
https://spreadsheets.google.com/lv?key=tDdcrv9wNQRCNCRCflWxhYQ&toomany=true#gid=0



C'est très intéressant, je regarde merci beaucoup !