Maison >interface Web >js tutoriel >Comment changer l'ordre d'exécution de Javascript
Méthodes : 1. Utilisez onload ; 2. Vous pouvez utiliser deferdefer dans IE pour charger le code et ne pas l'exécuter immédiatement. 3. Utilisez xmlhttpRequest dans Ajax pour déterminer l'état du document externe. chargement.
L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.
1. Utilisez onload
<script type="text/javascript"> //<![CDATA[ window.onload = f; function f(){alert(1);} alert(2); //]]> </script>
La séquence de valeurs de sortie est 2, 1.
Il convient de noter que s'il existe plusieurs winodws.onload, seul le plus efficace prendra effet. La solution est la suivante :
window.onload = function(){f();f1();f2();.....}
Utilisez le type d'événement DOM à 2 niveaux
if(document.addEventListener){ window.addEventListener('load',f,false); window.addEventListener('load',f1,false); ... }else{ window.attachEvent('onload',f); window.attachEvent('onload',f1); ... }
2 Dans IE, le report peut être. utilisé pour décoder le code.Après le chargement, il n'est pas exécuté immédiatement.Il est exécuté après le chargement du document.Il est un peu similaire à onload, mais n'a pas les limitations de onload.Il peut être réutilisé, mais il n'est valide que. dans IE, donc l'exemple ci-dessus peut être modifié en
<script type="text/javascript"> //<![CDATA[ document.write('<script type="text/javascript" src="test.js"><\/script>'); document.write('<script type="text/javascript" defer="defer">'); document.write('alert(2);') document.write('alert("我是" + tmpStr);'); document.write('<\/script>'); //]]> </script> <script type="text/javascript"> //<![CDATA[ alert(3); //]]> </script>
comme ça, IE ne signale plus d'erreur, et l'ordre des valeurs de sortie devient : 1, 3, 2, je suis 1
3, en utilisant Ajax.
Étant donné que xmlhttpRequest peut déterminer l'état de chargement des documents externes, il peut modifier l'ordre de chargement du code.
【Apprentissage recommandé : Tutoriel avancé javascript】
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!