2010-06-29 7 views
1

Je reçois des erreurs javascript pour tous mes liens qui contiennent des événements javascript. Ceci est dû au fait que l'utilisateur essaie de cliquer sur un lien, et pourtant les fichiers javascript n'ont pas encore été chargés.Javascript: chargement lent de la page

Comment puis-je résoudre ce problème? Y at-il un moyen de bloquer les événements javascript jusqu'à ce que tous les fichiers javascript sont chargés?

Merci.

Répondre

1

Si le code pour ce que vous faites est déclaré au-dessus de le lien (c'est-à-dire l'endroit où le code est utilisé) vous ne devriez pas avoir ce problème.

Je ne sais pas comment les différents navigateurs géreront l'ordre de chargement si le JavaScript est dans un fichier externe.

0

La manière classique de gérer cela consiste à masquer le contenu de la page derrière un DIV jusqu'à ce que l'événement onLoad() se déclenche, puis de le révéler en masquant le DIV.

Edité pour ajouter

Je vois son problème de ne pas être spécifiquement au sujet de javascript, mais le problème général de garder à l'utilisateur d'interagir avec la page avant qu'il ne soit chargé.

+0

Aucune offense, mais j'ai * jamais * entendu parler de ce qui est une manière « classique » de faire les choses. C'est une très mauvaise solution au problème IMO. –

+0

-1: Cette réponse n'est pas utile: vous voyez son problème. – naiad

+0

@sparkleshy: vous ne pouvez pas aimer ma réponse, mais ce n'est pas incorrect. Je l'ai fait plusieurs fois, et j'ai vu ** d'autres ** le faire à plusieurs reprises. Les deux autres réponses dépendent du fait que votre script se bloque avant vos liens, ce qui n'est pas toujours possible. – egrunin

1

Les blocs JavaScript nativement. Assurez-vous simplement que vos scripts sont chargés avant vos liens, c'est-à-dire dans la balise head.

ci-dessus devrait fixer, mais vous devriez regarder dans Progressive Enhancement

Questions connexes