<?xml version="1.0" encoding="utf-8"?>
<document>
   <titre>Intégrons Flash</titre>
   <contenu>
   
      <h2>Intégrons  Flash</h2>
      
      <p class="abstract">
          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.
      </p>
      
      <p>
          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.
      </p>
            
      <p>
          Pour plus d’informations sur les divers problèmes que Flash apporte, je
          vous recommande <a href="http://patrick.murris.com/articles/flash25.htm">
          l’article de Patrick Muris</a> qui explique pourquoi cette technologie
          est à éviter au maximum.
      </p>
   
      <h3>Flash coûte cher</h3>

      <ul>
      <li>
      <p>
          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.
      </p>
      </li>
      <li>
      <p> 
          Flash est une technologie propriétaire. Il faut donc acquérir une 
          licence d’utilisation si vous voulez modifier le travail d’autrui.
      </p>
      </li>
      <li>
      <p>
          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.
      </p>
      </li>
      <li>      
      <p>
          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.
      </p>
      </li>
      <li>
      <p>
          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.
      </p>
      </li>
      
      </ul>
            
      <h3>Les mauvaises pratiques</h3>
      
      <p>Voici une liste non exhaustive des choses qu’ils faut absolument éviter.</p>
      
      <dl>
          <dt>Un site tout en Flash, sans équivalent HTML</dt>
          <dd>Très mauvaise expérience utilisateur.</dd>
          <dd>Très peu accessible car celui qui n’a pas le fameux "plugin" ne pourra
          pas accéder à l’information.</dd>
          <dd>Pas d’indexation dans les moteurs de recherche.</dd>
          <dd>Développement coûteux.</dd>
          <dd>Peu flexible, mise à jour difficiles.</dd>
          
          <dt>Un menu de navigation en flash sans équivalent HTML</dt>
          <dd>Pas de navigation pour celui qui n’a pas le "plugin".</dd>
          <dd>Pas de d’indexation dans les moteurs de recherche.</dd>
          <dd>Souvent peu flexible.</dd>
          
          <dt>Contenu Flash sans équivalent HTML</dt>
          <dd>Pas de contenu pour celui qui n’a pas le "plugin".</dd>
          <dd>Pas de d’indexation dans les moteurs de recherche du contenu Flash.</dd>
          <dd>Mise à jour souvent lente et coûteuse.</dd>
          <dd></dd>
      </dl>
      
      <h3>Une bonne pratique</h3>
      
      <p>
          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. Cette méthode allonge considérablement
          le cycle de production, et de mise à jour des sites Web.
      </p>
      
      <p>
          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.
      </p>
      
      <h3>Solutions possibles au problème</h3>

     <p>Il y a deux manières d’inclure proprement une animation flash dans un page web. <a href="http://www.alistapart.com/articles/flashsatay/">La première 
     est la plus simple et ne nécessite pas l’utilisation de Javascript</a>. 

<h4>Exemple avec la technique xHTML simple</h4>

      <h5>Prérequis</h5>
      
      <ul>     
      <li>Une animation flash : feuille.swf</li>
      <li>Un image de remplacement : feuille.png</li>
      </ul>

<pre>
&lt;object type="application/x-shockwave-flash" data="feuille.swf" width="500" height="400"&gt;
  &lt;param name="movie" value="feuille.swf" /&gt;
  <span class="comment">&lt;!-- Notre image --&gt;</span>
  &lt;img src="feuille.png" alt="une feuille d’arbre" width="500" height="400" alt="" /&gt;
&lt;/object&gt;
</pre>

<p>Si le navigateur de l’utilisateur n’a pas le plugin Flash, alors le navigateur affiche l’image à la place.</p>
      
      <h4>Exemple avec la technique Javascript</h4>
      
<p>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.</p>
      
      <p>
          Le <a href="gestionFlash.js">script</a> utilisé est similaire à celui que 
          <a href="http://www.macromedia.com">Macromedia</a> 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.
      </p>
      
      <p>
          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.
      </p>

      <p>
          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.
      </p>

      <h5>Prérequis</h5>
      
      <ul>
      <li>Le <a href="gestionFlash.js">fichier Javascript</a> chargé à l’avance</li>
      <li>Un image de remplacement : feuille.png</li>
      <li>Une animation flash : feuille.swf</li>
      </ul>
      
      <h5>code d’exemple</h5>

      <pre>
<span class="comment">&lt;!-- Notre image --&gt;</span>
&lt;img src="feuille.png" id="feuilleAlt" alt="une feuille d’arbre" width="500" height="400 /&gt;
      
&lt;script type="text/javascript"&gt;
&lt;!--
if( FlashCanPlay ) <span class="comment">/* On teste si on peut afficher du Flash */</span>
{
    <span class="comment">/* On crée l’animation */</span>
    creatFlash("feuille.swf", 500, 400, "high" );
    <span class="comment">/* On cache l’image */</span>
    document.getElementById("feuilleAlt").style["display"]="none";
}
--&gt;
&lt;/script&gt;</pre>
      
   </contenu>
   <zone>
   
   <h3>Liens connexes</h3>

   <ul>
       <li><a href="gestionFlash.js">Télécharger le script</a>.</li>
       <li><a href="http://patrick.murris.com/articles/flash25.htm">Sites Flash : 25 raisons de dire non</a>.</li>
       <li><a href="http://www.alistapart.com/articles/flashsatay/">Inclure un fichier Flash dans une page HTML</a></li>
       <li><a href="http://www.macromedia.com/devnet/mx/flash/flashplayer_detection.html">Et chez Macromedia ?</a>.</li>       
       <li><a href="http://www.skyzyx.com/scripts/flash.php">Un autre script.</a></li>
   </ul>
   
      <dl>
          <dt>Auteur</dt>
         <dd><a href="/contacts/">Batiste Bieler</a></dd>
      </dl>

      <h3>Autres articles</h3>

      <ul>
         <li><a href="../Template/">Les modèles HTML</a></li>
         <li><a href="../Box-model-PHP/">PHP et le Box Model</a></li>
         <li><a href="../Menus-dynamiques/">Menus dynamiques</a></li>
      </ul>

   </zone>
</document>                                                                                      		