Malgré ses indéniables défauts, la technologie Macromedia Flash™ reste très populaire dans le domaine du Web. Cet article présente les pratiques à appliquer pour que son utilisation reste simple et ne pénalise personne.
Le Flash est présenté comme un formidable outil création qui libère des contraintes traditionnelles du Web. Mais le Flash n’est pas aussi simple d’utilisation qu’il n’y parait. Il est pratique quand il faut réaliser des animations mais il ne convient absolument à la création d’un site complet.
Pour plus d’informations sur les divers problèmes que Flash apporte, je vous recommande l’article de Patrick Muris qui explique pourquoi cette technologie est à éviter au maximum.
Les sites en Flash fonctionnent mal et même parfois pas du tout. L’utilisateur associe cela à une mauvaise expérience ce qui pourrait être désastreux pour votre image.
Flash est une technologie propriétaire. Il faut donc acquérir une licence d’utilisation si vous voulez modifier le travail d’autrui.
Développer en Flash prend plus de temps. En effet, sa grande complexité et son manque de modularité engendre des temps de conception, de modification et de mise à jour bien plus long qu’avec les technologies standards.
Les sites en Flash ne sont pas faits pour durer dans le temps car souvent associés à une évènement promotionnel éphémère. Les sites en Flash sont donc un mauvais investissement à long terme.
Les site en Flash sont mal indexés dans les moteurs de recherche. Il arrive même qu’ils ne le soient pas du tout. Une si mauvaise visiblité sur le web ne vous permettra pas de rentabiliser votre investissement.
Voici une liste non exhaustive des choses qu’ils faut absolument éviter.
Une bonne pratique est de remplacer systématiquement le contenu en Flash par sont équivalent HTML. Une solution est de proposer un site entièrement en Flash et un autre site en HTML optenu à partir du site Flash. Mais cette méthode allonge considérablement le cycle de production, et de mise à jour des sites Web.
Les sites devrait être HTML et éventuellement intégrer de temps à autre une animation. Si celle ci présente une information réel, il faut fournir un équivalent en HTML afin qu’un maximum de visiteurs aient accès au contenu.
Il y a deux manières d’inclure proprement une animation flash dans un page web. La première est la plus simple et ne nécessite pas l’utilisation de Javascript.
<object type="application/x-shockwave-flash" data="feuille.swf" width="500" height="400">
<param name="movie" value="feuille.swf" />
<!-- Notre image -->
<img src="feuille.png" alt="une feuille d’arbre" width="500" height="400" alt="" />
</object>
Si le navigateur de l’utilisateur n’a pas le plugin Flash, alors le navigateur affiche l’image à la place.
La deuxième méthode nécessite un script de détection du Plugin Flash. À moin avis, cette dernière méthode est compatible avec une plus large gamme de navigateurs car elle tiens en compte de la version du plugin disponible.
Le script utilisé est similaire à celui que Macromedia préconise sur son site. Je lui ai rajouté une petite fonction qui permet d’insérer dynamiquement et proprement une animation Flash dans la page.
L’utilisation de ce fichier est simple: il suffit de spécifier dans ce fichier la version de Flash avec laquelle vous désirez travailler. Si le navigateur du client gère cette version, une variable "FlashCanPlay" est crée. Il suffit ensuite de tester l’existence de cette variable pour créer l’animation.
Dans cet exemple une image remplace l’animation Flash. Si le navigateur du client gère la bonne version de Flash, l’animation est crée et l’image est cachée.
<!-- Notre image --> <img src="feuille.png" id="feuilleAlt" alt="une feuille d’arbre" width="500" height="400 /> <script type="text/javascript"> <!-- if( FlashCanPlay ) /* On teste si on peut afficher du Flash */ { /* On crée l’animation */ creatFlash("feuille.swf", 500, 400, "high" ); /* On cache l’image */ document.getElementById("feuilleAlt").style["display"]="none"; } --> </script>