11548 sujets

JavaScript, DOM et API Web HTML5

Le mot clé "defer" n'est pas pris en compte sous Firefox (Cela fonctionne sous MSIE). Pouvez-vous me donner l'équivalent.


<script type="text/javascript" src="javascript/firebug.js" defer="true"> </script>


Merci,
Rémy.
Je ne connaissais pas cet attribut avant ton post.
Après vérification, l'attribut defer est un "attribut minimisé" ; donc la valeur "true" est fausse. Il faudrait écrire defer="defer" (dans un contexte XHTML) ou defer (tout seul dans un contexte HTML).

Je ne sais pas si le problème vient de ça ...

Romain
Modifié par yodaswii (20 Apr 2007 - 16:19)
Bonjour,
defer est un attribut propre à Internet Explorer uniquement.
Quel résultat recherches tu?
Defer ne fonctionne que sous IE et permet de charger un script seulement une fois que tout le reste de la page est chargé.

Si tu veux quelque chose d'à peu près équivalent pour FF, cherche plutot du coté de :

document.addEventListener("DOMContentLoaded", f)


ta fonction f se chargera uniquement une fois que l'ensemble de la page (balise uniquement) sera chargé. C'est à dire qu'il n'attendra pas le chargement de toutes les images ou animations, juste le chargement de ton DOMTree.
Il fire donc avant window.onload et normalement en même temps que ce que defer propose
Modifié par Tymlis (20 Apr 2007 - 16:44)
Bonjour,
matmat a écrit :
defer est un attribut propre à Internet Explorer uniquement.
Pas du tout, defer est un attribut défini en HTML 4.01 et XHTML 1.0 :
a écrit :
Quand il est présent, cet attribut booléen indique à l'agent utilisateur que le script ne va générer aucun contenu de document (par exemple, aucune instruction « document.write » en Javascript), l'agent utilisateur peut donc poursuivre l'analyse et la restitution.
C'est donc juste une indiquation pour le navigateur. Je crois en effet que Firefox n'en tient pas compte. IE le prend en compte en attendant que l'arbre DOM soit créé pour exécuter le script (astuce utilisée par certains scripts de chargement comme celui de Dean Edwards, qui peut être considérée comme un hack étant donné que ce comportement n'a rien de normatif).
Modifié par Julien Royer (20 Apr 2007 - 16:46)