Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1382 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [JS] Attendre la fin d'une instruction avant de passer à la suivante

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[JS] Attendre la fin d'une instruction avant de passer à la suivante

n°2148320
Cver1
...alors avance.
Posté le 05-07-2012 à 16:59:38  profilanswer
 

Coucou. :o

 

Je voudrais savoir quels moyens existent pour imposer aux navigateurs l'execution totale d'une instruction avant de passer à la suivante.

 

instuction 1
...et uniquement lorsqu'elle est achevée...
instuction 2

 

Il me semble que les anciennes versions de Firefox se comportaient de la sorte. Est-ce depuis cette course aux millisecondes gagnées sur le chargement d'une page lancée par les navigateurs que le comportement à changé ?


Message édité par Cver1 le 05-07-2012 à 17:00:38
mood
Publicité
Posté le 05-07-2012 à 16:59:38  profilanswer
 

n°2148329
WiiDS
20 titres en GC, 0 abandon, 0 DQ
Posté le 05-07-2012 à 17:55:32  profilanswer
 

A ma connaissance c'est toujours le cas, après il faudrait que tu définisses "instruction" :o


---------------
"I can cry like Roger. It's just a shame I can't play like him" - Andy Murray, 2010
n°2148330
masklinn
í dag viðrar vel til loftárása
Posté le 05-07-2012 à 18:13:25  profilanswer
 

WiiDS a écrit :

A ma connaissance c'est toujours le cas


Oui, le JS est et reste single-threadé, il ne peut pas y avoir deux contextes d'exécution implicitement mêlés.


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°2148332
Cver1
...alors avance.
Posté le 05-07-2012 à 18:26:09  profilanswer
 

Au départ j'avais les deux instructions suivantes dans cet ordre :

 

document.location.href = "/blabla";
alert("blabla" );

 

Sous FF3.5 j'avais la redirection sur la nouvelle page, puis ma boite de dialogue.

 

Maintenant je vois un bref instant ma boite de dialogue (1/2 seconde) avant que celle ci ne disparaisse pour arriver la page de redirection. Comme si la deuxième instruction avait commencé avant la fin de la première.

Message cité 2 fois
Message édité par Cver1 le 05-07-2012 à 18:26:28
n°2148335
WiiDS
20 titres en GC, 0 abandon, 0 DQ
Posté le 05-07-2012 à 19:27:33  profilanswer
 

Cver1 a écrit :

Au départ j'avais les deux instructions suivantes dans cet ordre :
 

document.location.href = "/blabla";
alert("blabla" );


 
Sous FF3.5 j'avais la redirection sur la nouvelle page, puis ma boite de dialogue.  
 
Maintenant je vois un bref instant ma boite de dialogue (1/2 seconde) avant que celle ci ne disparaisse pour arriver la page de redirection. Comme si la deuxième instruction avait commencé avant la fin de la première.


Je pense que c'est pas une bonne idée de procéder ainsi. Quand tu fais document.location.href = "/blabla", tu demandes au navigateur de rediriger vers cette adresse et donc de quitter la page courante. Dès lors, ça ne m'étonne pas qu'il soit possible que le reste de ton script ne soit pas exécuté. Le fait que les nouvelles versions de FF soient plus rapides doivent y jouer, c'est sur.


---------------
"I can cry like Roger. It's just a shame I can't play like him" - Andy Murray, 2010
n°2148337
masklinn
í dag viðrar vel til loftárása
Posté le 05-07-2012 à 19:51:33  profilanswer
 

Cver1 a écrit :

Au départ j'avais les deux instructions suivantes dans cet ordre :

 

document.location.href = "/blabla";
alert("blabla" );

 

Sous FF3.5 j'avais la redirection sur la nouvelle page, puis ma boite de dialogue.

 

Maintenant je vois un bref instant ma boite de dialogue (1/2 seconde) avant que celle ci ne disparaisse pour arriver la page de redirection. Comme si la deuxième instruction avait commencé avant la fin de la première.


À ma connaissance, c'était un hack et un coup de bol que ça fonctionne, location.href synchrone.

 

Il est encore plus surprenant qu'il conservait le contexte d'exécution courant à travers un reload.


Message édité par masklinn le 05-07-2012 à 19:53:21

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°2148532
Cver1
...alors avance.
Posté le 07-07-2012 à 16:10:23  profilanswer
 

Merci pour vos réponses. :jap: :jap:


Message édité par Cver1 le 07-07-2012 à 16:10:29

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [JS] Attendre la fin d'une instruction avant de passer à la suivante

 

Sujets relatifs
[JEE] Passer d'interfaces distantes à locales[Résolu] Passer une variable dans un include
PhP: Comment passer d'une BDD SQL à SQLite?Macro Excel : remplir les vides avec la valeur de la cellule suivante
[AIDE] EXT-JS 4 : filtres sur tableaucomment centrer l'horloge suivante ?
[RESOLU] EXT-JS 4 : tableau avec pagination + triresoudre et passer au langage c
[JS et PHP] Récupération des donées d'un Select multiple[JS / CSS] Ignorer une div
Plus de sujets relatifs à : [JS] Attendre la fin d'une instruction avant de passer à la suivante


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR