<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://blog.jflad.com/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
  <title>JFLAD Blog: Recherche &amp; développement: Ajax, Javascript, CSS, XHTML, Flash, Référencement, Webmarketing, Open Source, gestion de projet - Ajax</title>
  <link>http://blog.jflad.com/</link>
  <description>JFLAD Blog présente les travaux de veille et recherche sur les technologies: Ajax, Javascript, CSS, XHTML, Flash, Ria, Application riche, Référencement, Webmarketing, Gestion de projet, Open Source.</description>
  <language>fr</language>
  <pubDate>Mon, 19 Jul 2010 07:18:46 +0100</pubDate>
  <copyright>jflad</copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Sortie officielle de la nouvelle version du framework javascript mootools en version 1.2</title>
    <link>http://blog.jflad.com/post/Sortie-officielle-de-la-nouvelle-version-du-framework-javascript-mootools-en-version-12</link>
    <guid isPermaLink="false">urn:md5:b8f582c5e2f3bb37748723266fbce8d8</guid>
    <pubDate>Tue, 17 Jun 2008 13:06:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>design</category><category>ergonomie</category><category>framework</category><category>interactivité</category><category>javascript</category><category>mootools</category><category>Mootools</category>    
    <description>    Courant de semaine dernière, &lt;a href=&quot;http://blog.jflad.com/tag/mootools%20&quot;&gt;mootools &lt;/a&gt;a sortie le nouvelle version de son &lt;a href=&quot;http://blog.jflad.com/tag/framework%20&quot;&gt;framework &lt;/a&gt;&lt;a href=&quot;http://blog.jflad.com/tag/javascript%20&quot;&gt;javascript &lt;/a&gt;en version 1.2 ! Beaucoup de nouveautés sont au rendez-vous, c'est véritablement l'ensemble du &lt;a href=&quot;http://blog.jflad.com/tag/framework%20&quot;&gt;framework &lt;/a&gt;qui a été re-codé !&lt;br /&gt;&lt;br /&gt;Je n'ai pas encore eu le temps de tester, mais j'ai pu constater que le &lt;a href=&quot;http://blog.jflad.com/tag/framework%20&quot;&gt;framework &lt;/a&gt;a été totalement repensé, avec une nouvelle architecture:&lt;br /&gt;&lt;div id=&quot;main-menu&quot; class=&quot;span-4&quot;&gt;
&lt;h4&gt;Core&lt;/h4&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Core/Core&quot;&gt;Core&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Core/Browser&quot;&gt;Browser&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Native&lt;/h4&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Native/Array&quot;&gt;Array&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Native/Function&quot;&gt;Function&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Native/Number&quot;&gt;Number&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Native/String&quot;&gt;String&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Native/Hash&quot;&gt;Hash&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Native/Event&quot;&gt;Event&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Class&lt;/h4&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Class/Class&quot;&gt;Class&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Class/Class.Extras&quot;&gt;Class.Extras&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Element&lt;/h4&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Element/Element&quot;&gt;Element&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Element/Element.Event&quot;&gt;Element.Event&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Element/Element.Style&quot;&gt;Element.Style&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Element/Element.Dimensions&quot;&gt;Element.Dimensions&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Utilities&lt;/h4&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Utilities/Selectors&quot;&gt;Selectors&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Utilities/DomReady&quot;&gt;DomReady&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Utilities/JSON&quot;&gt;JSON&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Utilities/Cookie&quot;&gt;Cookie&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Utilities/Swiff&quot;&gt;Swiff&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fx&lt;/h4&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Fx/Fx&quot;&gt;Fx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Fx/Fx.CSS&quot;&gt;Fx.CSS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Fx/Fx.Tween&quot;&gt;Fx.Tween&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Fx/Fx.Morph&quot;&gt;Fx.Morph&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Fx/Fx.Transitions&quot;&gt;Fx.Transitions&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Request&lt;/h4&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Request/Request&quot;&gt;Request&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Request/Request.HTML&quot;&gt;Request.HTML&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Request/Request.JSON&quot;&gt;Request.JSON&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Plugins&lt;/h4&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Fx.Slide&quot;&gt;Fx.Slide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Fx.Scroll&quot;&gt;Fx.Scroll&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Fx.Elements&quot;&gt;Fx.Elements&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Drag&quot;&gt;Drag&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Drag.Move&quot;&gt;Drag.Move&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Color&quot;&gt;Color&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Group&quot;&gt;Group&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Hash.Cookie&quot;&gt;Hash.Cookie&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Sortables&quot;&gt;Sortables&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Tips&quot;&gt;Tips&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/SmoothScroll&quot;&gt;SmoothScroll&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Slider&quot;&gt;Slider&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Scroller&quot;&gt;Scroller&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Assets&quot;&gt;Assets&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.mootools.net/Plugins/Accordion&quot;&gt;Accordion&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;&lt;br /&gt;&lt;a href=&quot;http://blog.jflad.com/tag/Mootools%20&quot;&gt;Mootools &lt;/a&gt;à bien évidement pensés à la compatibilité des versions, ainsi les anciennes version de &lt;a href=&quot;http://blog.jflad.com/tag/mootools%20&quot;&gt;mootools &lt;/a&gt;seront compatible avec le nouveau &lt;a href=&quot;http://blog.jflad.com/tag/framework&quot;&gt;framework&lt;/a&gt; 1.2.&lt;br /&gt;&lt;br /&gt;Petite parenthèse pour le nouveau site internet &lt;a href=&quot;http://blog.jflad.com/tag/mootools%20&quot;&gt;mootools &lt;/a&gt;qui a accompagné la sortie de ce nouveau &lt;a href=&quot;http://blog.jflad.com/tag/framework&quot;&gt;framework&lt;/a&gt;, je le retrouve vraiment moins agréable que l'ancienne version à tous les niveaux: &lt;a href=&quot;http://blog.jflad.com/tag/ergonomie&quot;&gt;ergonomie&lt;/a&gt;, &lt;a href=&quot;http://blog.jflad.com/tag/design&quot;&gt;design&lt;/a&gt;, &lt;a href=&quot;http://blog.jflad.com/tag/interactivit%C3%A9&quot;&gt;interactivité&lt;/a&gt;... Vraiment dommage que le site est perdu sa petite touche &lt;a href=&quot;http://blog.jflad.com/tag/mootools%20&quot;&gt;mootools &lt;/a&gt;que tout le monde appréciait !&lt;br /&gt;&lt;br /&gt;Il reste à voir si cette nouvelle version va être suivis, donnez moi votre avis !&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;</description>
    
    
    
          <comments>http://blog.jflad.com/post/Sortie-officielle-de-la-nouvelle-version-du-framework-javascript-mootools-en-version-12#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/Sortie-officielle-de-la-nouvelle-version-du-framework-javascript-mootools-en-version-12#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/34</wfw:commentRss>
      </item>
    
  <item>
    <title>Effet de survol sur vos éléments avec mootools</title>
    <link>http://blog.jflad.com/post/Effet-de-survol-sur-vos-elements-avec-mootools</link>
    <guid isPermaLink="false">urn:md5:1207f2ed82fbaf0a477083fbdaa62a60</guid>
    <pubDate>Mon, 16 Jun 2008 10:15:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>boutons</category><category>effets</category><category>illustrations</category><category>images</category><category>mootools</category><category>progressif</category>    
    <description>    &lt;p&gt;Pour enrichir vos sites internet, il peut être sympa d'ajouter des &lt;a href=&quot;http://blog.jflad.com/tag/effets%20&quot;&gt;effets &lt;/a&gt;de survol &lt;a href=&quot;http://blog.jflad.com/tag/progressif%20&quot;&gt;progressif &lt;/a&gt;à vos liens, &lt;a href=&quot;http://blog.jflad.com/tag/boutons&quot;&gt;boutons&lt;/a&gt;, &lt;a href=&quot;http://blog.jflad.com/tag/images&quot;&gt;images&lt;/a&gt;, &lt;a href=&quot;http://blog.jflad.com/tag/illustrations&quot;&gt;illustrations&lt;/a&gt;... Pour cela, &lt;a href=&quot;http://blog.jflad.com/tag/mootools%20&quot;&gt;mootools &lt;/a&gt;est parfaitement adapter et permet très facilement d'ajouter un gestionnaire d'évènement sur certains éléments ! &lt;br /&gt;&lt;br /&gt;Prenons l'exemple d'un effet de changement de couleur &lt;a href=&quot;http://blog.jflad.com/tag/progressif%20&quot;&gt;progressif &lt;/a&gt;de la couleur d'un texte d'un lien au survol de celui ci:&lt;/p&gt;
&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;span class=&quot;kw2&quot;&gt;&lt;br /&gt;	var&lt;/span&gt; fx = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Fx.&lt;span class=&quot;me1&quot;&gt;Styles&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;(&lt;/span&gt;$('idElement'), &lt;span class=&quot;br0&quot;&gt;{&lt;/span&gt;duration:&lt;span class=&quot;nu0&quot;&gt;200&lt;/span&gt;, wait:&lt;span class=&quot;kw2&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;)&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	$('idElement').&lt;span class=&quot;me1&quot;&gt;addEvent&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'mouseenter'&lt;/span&gt;, &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;{&lt;/span&gt;&lt;br /&gt;		fx.&lt;span class=&quot;me1&quot;&gt;start&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;st0&quot;&gt;'background-color'&lt;/span&gt;: &lt;span class=&quot;st0&quot;&gt;'#666'&lt;/span&gt;	&lt;br /&gt;		&lt;span class=&quot;br0&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;)&lt;/span&gt;;&lt;br /&gt;	&lt;span class=&quot;br0&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;)&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;	$('idElement').&lt;span class=&quot;me1&quot;&gt;addEvent&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'mouseleave'&lt;/span&gt;, &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;{&lt;/span&gt;&lt;br /&gt;		fx.&lt;span class=&quot;me1&quot;&gt;start&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;{&lt;/span&gt;&lt;br /&gt;		    &lt;span class=&quot;st0&quot;&gt;'background-color'&lt;/span&gt;: &lt;span class=&quot;st0&quot;&gt;'#333'&lt;/span&gt;&lt;br /&gt;		&lt;span class=&quot;br0&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;)&lt;/span&gt;;&lt;br /&gt;	&lt;span class=&quot;br0&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;)&lt;/span&gt;;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Voila, l'exemple est assez simple, il ne reste plus qu'a paramétrer le &lt;a hreflang=&quot;fr&quot; href=&quot;http://blog.jflad.com/post/Enrichir-vos-formulaires-avec-FxStyles-de-Mootools&quot;&gt;Fx.Styles&lt;/a&gt; et le tour est joué !&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.jflad.com/post/Effet-de-survol-sur-vos-elements-avec-mootools#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/Effet-de-survol-sur-vos-elements-avec-mootools#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/33</wfw:commentRss>
      </item>
    
  <item>
    <title>Enrichir vos formulaires avec Fx.Styles de Mootools</title>
    <link>http://blog.jflad.com/post/Enrichir-vos-formulaires-avec-FxStyles-de-Mootools</link>
    <guid isPermaLink="false">urn:md5:ad8f57fe6ec190cc6adf5cd63db4f707</guid>
    <pubDate>Sun, 27 Apr 2008 18:53:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>formulaire</category><category>Fx.Styles</category><category>interactivité</category><category>Mootools</category><category>élastique</category><category>évènement</category>    
    <description>    &lt;p&gt;Rajouter un peu d'&lt;a href=&quot;http://blog.jflad.com/tag/interactivit%C3%A9%20&quot;&gt;interactivité &lt;/a&gt;est très abordable avec &lt;a href=&quot;http://blog.jflad.com/tag/Mootools%20&quot;&gt;Mootools &lt;/a&gt;et son objet &lt;a href=&quot;http://blog.jflad.com/tag/Fx.Styles&quot;&gt;Fx.Styles&lt;/a&gt;. Quelques lignes peuvent permettre de rajouter un effet progressif de changement de couleur, ainsi qu'un léger effet &lt;a href=&quot;http://blog.jflad.com/tag/%C3%A9lastique%20&quot;&gt;élastique &lt;/a&gt;d'agrandissement sur les champs du &lt;a href=&quot;http://blog.jflad.com/tag/formulaire&quot;&gt;formulaire&lt;/a&gt;.&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt; Pour effectuer cette opération, il faut découper notre développement en trois étapes:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Déclaration et initialisation des variables,&lt;/li&gt;
&lt;li&gt;Initialisation de l'objet &lt;a href=&quot;http://blog.jflad.com/tag/Fx.Styles&quot;&gt;Fx.Styles&lt;/a&gt;,&lt;/li&gt;
&lt;li&gt;On attribue les gestionnaires d'&lt;a href=&quot;http://blog.jflad.com/tag/%C3%A9v%C3%A8nement&quot;&gt;évènement&lt;/a&gt;,&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;h2&gt;Présentation du code source:&lt;/h2&gt;
&lt;br /&gt;
&lt;blockquote&gt;&lt;p&gt;window.addEvent('domready', function(){&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;////////////////////////////////////////////////////&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// On déclare les variables&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var type = 'text';&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var duree = 2000;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var widthIn = '200px';&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var widthOut = '150px';&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var colorIn = '#333333';&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var colorOut = '#CCCCCC';&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var bgIn = '#CCCCCC';&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var bgOut = '#1E1E1E';&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;  //////////////////////////////////////&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // On boucle sur tout les éléments du formulaire&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var input = $$('#formulaire '+type);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;input.each(function(element) {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;  &amp;nbsp;&amp;nbsp;&amp;nbsp;  // On initialise l'objet Fx.Styles&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var fxInput = new Fx.Styles(element, {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;duration:duree, &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;wait:false,&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;transition: Fx.Transitions.Back.easeOut&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;});&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;  &amp;nbsp;&amp;nbsp;  &amp;nbsp; // On attache le gestionnaire d'évènement 'focus'&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;$(element).addEvent('focus', function(e) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;e = new Event(e).stop();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert('okai');&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;fxInput.start({&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;'width': widthIn,&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;'color': colorIn,&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;'background-color': bgIn &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;});&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;});&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // On attache le gestionnaire d'évènement 'blur'&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;$(element).addEvent('blur', function(e) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;e = new Event(e).stop();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;fxInput.start({&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;'width': widthOut,&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;'color': colorOut,&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;'background-color': bgOut&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;});&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;});&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;});&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;});&lt;/p&gt;
&lt;/blockquote&gt;</description>
    
    
    
          <comments>http://blog.jflad.com/post/Enrichir-vos-formulaires-avec-FxStyles-de-Mootools#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/Enrichir-vos-formulaires-avec-FxStyles-de-Mootools#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/31</wfw:commentRss>
      </item>
    
  <item>
    <title>Programmation Objet en Javascript</title>
    <link>http://blog.jflad.com/post/Programmation-Objet-en-Javascript</link>
    <guid isPermaLink="false">urn:md5:f60ed478e0f2c596dd0788e5f0b36f3e</guid>
    <pubDate>Mon, 03 Sep 2007 16:41:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>Action Script</category><category>Ajax</category><category>Buzz</category><category>Flash</category><category>Javascript</category><category>Mootools</category><category>Web 2.0</category>    
    <description>    &lt;p&gt;Ce tutoriel vous présente la syntaxe de la programmation Objet en &lt;a href=&quot;http://blog.jflad.com/tag/Javascript&quot;&gt;Javascript&lt;/a&gt;. Pour la petite histoire, le &lt;a href=&quot;http://blog.jflad.com/tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;était le précurseur des langages orienté &lt;strong&gt;Objet &lt;/strong&gt;pour le &lt;strong&gt;Web&lt;/strong&gt;. Décliner en &lt;a href=&quot;http://blog.jflad.com/tag/Action%20Script&quot;&gt;Action Script&lt;/a&gt; pour &lt;a href=&quot;http://blog.jflad.com/tag/Flash%20&quot;&gt;Flash &lt;/a&gt;ou il a connu un très grand succès, il a perdu progressivement de sa notoriété au fil des années, mais heureusement avec le &lt;a href=&quot;http://blog.jflad.com/tag/Buzz%20&quot;&gt;&lt;strong&gt;Buzz &lt;/strong&gt;&lt;/a&gt;du &lt;a href=&quot;http://blog.jflad.com/tag/Web%202.0&quot;&gt;Web 2.0&lt;/a&gt; et &lt;a href=&quot;http://blog.jflad.com/tag/Ajax&quot;&gt;Ajax&lt;/a&gt;, ce langage bénéficie d'une seconde vie ! &lt;/p&gt;
&lt;p&gt;Voici un exemple qui vous montre comme créer vos propres objet en &lt;a href=&quot;http://blog.jflad.com/tag/Javascript&quot;&gt;Javascript&lt;/a&gt; et les instancier:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Object JS&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var monObjet = {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// Paramètre&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;param1: {&quot;x&quot;: 0, &quot;y&quot;: 0},&amp;nbsp;&amp;nbsp;&amp;nbsp; // On constate qu'un variable de paramètre peut aussi être un objet&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;param2: 2,&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;param3: 333,&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// Méthode&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;maMethode1 : function (var1, var2) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;this['param1'].x = var1;&amp;nbsp;&amp;nbsp; // On pointe sur le paramètre objet avec des crochets comme dans &lt;a href=&quot;http://blog.jflad.com/tag/Flash&quot;&gt;Flash&lt;/a&gt;!&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;this.param2 = var2;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Poitage classique sur un paramètre&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert('Var1: '+var2);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;},&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;maMethode2 : function() {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var var2 = this['param1'].x;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert('Var2: '+var2);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;},&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;maMethode3 : function() {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var var3 = this['param3'];&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert('Var3: '+var3);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;// Pour instancier un objet 'monObjet' et lui appliquer des méthode&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;monObjet.maMethode1(100,200);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;monObjet.maMethode2();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; monObjet.maMethode3();&lt;/p&gt;
&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;
&lt;p&gt;Comme vous pouvez le constater, ce n'est pas très compliquer, mais il y a beaucoup de mauvaise utilisation du &lt;a href=&quot;http://blog.jflad.com/tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;qui porte souvent à confusion. Mais cet exemple illustre la véritable syntaxe orienté objet du &lt;a href=&quot;http://blog.jflad.com/tag/Javascript&quot;&gt;Javascript&lt;/a&gt;, couplé avec &lt;a href=&quot;http://blog.jflad.com/tag/Mootools&quot;&gt;Mootools&lt;/a&gt;, vous allez vraiment avoir un grande liberté d'action un fois ce principe maitrisé !&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.jflad.com/post/Programmation-Objet-en-Javascript#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/Programmation-Objet-en-Javascript#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/24</wfw:commentRss>
      </item>
    
  <item>
    <title>Faire une requête en Ajax avec Mootools</title>
    <link>http://blog.jflad.com/post/Faire-une-requette-en-Ajax-avec-Mootools</link>
    <guid isPermaLink="false">urn:md5:e2df1a67db646be45f75aec073c38c02</guid>
    <pubDate>Tue, 28 Aug 2007 16:58:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>Ajax</category><category>Google</category><category>Javascript</category><category>Mootols</category><category>Mootools</category><category>PHP</category><category>SQL</category><category>XHTML</category>    
    <description>    &lt;p&gt;&lt;img style=&quot;margin: 0 1em 1em 0; float: left;&quot; alt=&quot;&quot; src=&quot;http://blog.jflad.com/public/logo/mootools.jpg&quot; /&gt;Ce tutoriel vous montre comment faire des requêtes en &lt;a href=&quot;http://blog.jflad.com/tag/Ajax%20&quot;&gt;Ajax &lt;/a&gt;avec la librairie &lt;a href=&quot;http://blog.jflad.com/tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;&lt;a href=&quot;http://blog.jflad.com/tag/Mootols&quot;&gt;Mootols&lt;/a&gt;, c'est à dire comment afficher des données provenant d'une base de données en fonction d'une requête &lt;a href=&quot;http://blog.jflad.com/tag/SQL%20&quot;&gt;SQL &lt;/a&gt;sans rechargement de la page et en apportant une touche d'interactivité. Cette application &lt;a href=&quot;http://blog.jflad.com/tag/Ajax%20&quot;&gt;Ajax &lt;/a&gt;se greffera sur un site traditionnel, car comme je l'ai déjà expliqué dans un précédent &lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;fr&quot; href=&quot;http://blog.jflad.com/post/Beaucoup-damalgame-dans-le-mot-Ajax&quot;&gt;billet&lt;/a&gt;, une application &lt;a href=&quot;http://blog.jflad.com/tag/Ajax&quot;&gt;Ajax&lt;/a&gt; se greffe sur un site déjà existant afin de bénéficier de son référencement et d'une structure stable dans le cas où le client a désactivé le &lt;a href=&quot;http://blog.jflad.com/tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;de son navigateur.&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;Avant de commencer, il est important de comprendre deux choses qui sont essentielles dans le développement d'un application &lt;a href=&quot;http://blog.jflad.com/tag/Ajax&quot;&gt;Ajax&lt;/a&gt;: les conteneurs et les gestionnaires d'évènements (je parle aux non initiés !!!).&lt;/p&gt;
&lt;br /&gt;
&lt;h3&gt;Les conteneurs&lt;/h3&gt;
&lt;p&gt;Les conteneurs vont vous permettre de délimiter les zones d'affichage des données, ce sont des 'div' que l'on identifie grâce à leur 'id'. Il est important de bien les nommer afin de pourvoir les retrouver facilement !&lt;/p&gt;
&lt;h3&gt;Les gestionnaires d'évènements&lt;/h3&gt;
&lt;p&gt;Les gestionnaires d'évènements vont vous permettre de récupérer les évènements de la page suivant les actions de l'utilisateur. Exemple: quand l'utilisateur 'click' sur un bouton, quand les données sont chargées avec succès 'onSucces' ...&lt;br /&gt;&lt;a href=&quot;http://blog.jflad.com/tag/Mootools%20&quot;&gt;Mootools &lt;/a&gt;dispose de puissants gestionnaires d'évènements qui vont vous permettre de contrôler l'ensemble des actions de l'utilisateur et des différents états de la page.&lt;/p&gt;
&lt;p&gt;Dans un premier temps il faut développer le site normalement pour qu'il fonctionne en totale indépendance du &lt;a href=&quot;http://blog.jflad.com/tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;et pour être référencé sous &lt;a href=&quot;http://blog.jflad.com/tag/Google&quot;&gt;Google&lt;/a&gt;. Conservez vos méthodes et outils traditionnels pour concevoir votre site, il faut juste bien définir le nom des 'id' des éléments qui seront utilisés par nos scripts &lt;a href=&quot;http://blog.jflad.com/tag/Ajax&quot;&gt;Ajax&lt;/a&gt;, par exemple le conteneur qui affiche les données, le menu qui déclenche les requêtes &lt;a href=&quot;http://blog.jflad.com/tag/Ajax&quot;&gt;Ajax&lt;/a&gt;, etc... &lt;br /&gt;Une fois le site construit, nous allons développer notre applications &lt;a href=&quot;http://blog.jflad.com/tag/Ajax&quot;&gt;Ajax&lt;/a&gt;, pour se faire nous aurons besoin de:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Notre page &lt;a href=&quot;http://blog.jflad.com/tag/XHTML%20&quot;&gt;&lt;a href=&quot;http://blog.jflad.com/tag/XHTML%20&quot;&gt;XHTML &lt;/a&gt;&lt;/a&gt;avec un menu en liste,&lt;/li&gt;
&lt;li&gt;La librairie &lt;a href=&quot;http://blog.jflad.com/tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;&lt;a href=&quot;http://blog.jflad.com/tag/Mootools&quot;&gt;Mootools&lt;/a&gt; à inclure dans l'entête de la page,&lt;/li&gt;
&lt;li&gt;Un fichier &lt;a href=&quot;http://blog.jflad.com/tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;qui exécute la requête &lt;a href=&quot;http://blog.jflad.com/tag/Ajax&quot;&gt;Ajax&lt;/a&gt;,&lt;/li&gt;
&lt;li&gt;Un fichier &lt;a href=&quot;http://blog.jflad.com/tag/PHP%20&quot;&gt;PHP &lt;/a&gt;qui traite la requête et retourne les données à afficher.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Comme le développement de l'application &lt;a href=&quot;http://blog.jflad.com/tag/Ajax%20&quot;&gt;Ajax &lt;/a&gt;est indépendant de votre site, elle peut être déployée sur un site déjà existant sans nécessité de modification sur la structure du site! Il vous faudra alors uniquement inclure vos librairies &lt;a href=&quot;http://blog.jflad.com/tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;et &lt;a href=&quot;http://blog.jflad.com/tag/Mootools%20&quot;&gt;Mootools &lt;/a&gt;et créer vos fichiers &lt;a href=&quot;http://blog.jflad.com/tag/PHP%20&quot;&gt;PHP &lt;/a&gt;qui effectueront vos traitements coté serveur.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Débutons désormais le développement de l'application &lt;a href=&quot;http://blog.jflad.com/tag/Ajax&quot;&gt;Ajax&lt;/a&gt;, tout d'abord il faut inclure dans l'entête la librairie &lt;a href=&quot;http://blog.jflad.com/tag/Mootools%20&quot;&gt;Mootools &lt;/a&gt;que vous pouvez télécharger sur le site de &lt;a hreflang=&quot;fr&quot; href=&quot;http://mootools.net/download&quot;&gt;Mootools.net&lt;/a&gt;, et le script &lt;a href=&quot;http://blog.jflad.com/tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;que nous allons développer. Le principe de base est de déclencher la requête &lt;a href=&quot;http://blog.jflad.com/tag/Ajax%20&quot;&gt;Ajax &lt;/a&gt;lorsque l'on 'click' sur un lien du menu. Voici le code &lt;a href=&quot;http://blog.jflad.com/tag/XHTML%20&quot;&gt;XHTML &lt;/a&gt;de notre page, comme vous pouvez le constater, il n'y a aucun script ou gestionnaire d'évènements dans notre document &lt;a href=&quot;http://blog.jflad.com/tag/XHTML&quot;&gt;XHTML&lt;/a&gt;, juste des balises! Tout le contrôle des évènements va se faire depuis notre script &lt;a href=&quot;http://blog.jflad.com/tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;!&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;lt;ul id=&quot;myElement&quot;&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;li&amp;gt;&amp;lt;a href=&quot;http://blog.jflad.com/post/test/voila1/&quot;&amp;gt;Test1&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;li&amp;gt;&amp;lt;a href=&quot;http://blog.jflad.com/post/test/voila2/&quot;&amp;gt;Test2&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;li&amp;gt;&amp;lt;a href=&quot;http://blog.jflad.com/post/test/voila3/&quot;&amp;gt;Test3&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;li&amp;gt;&amp;lt;a href=&quot;http://blog.jflad.com/post/test/voila4/&quot;&amp;gt;Test4&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;li&amp;gt;&amp;lt;a href=&quot;http://blog.jflad.com/post/test/voila5/&quot;&amp;gt;Test5&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;li&amp;gt;&amp;lt;a href=&quot;http://blog.jflad.com/post/test/voila6/&quot;&amp;gt;Test6&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;lt;/ul&amp;gt;&lt;/p&gt;
&lt;/blockquote&gt;&lt;br /&gt;&lt;p&gt;Maintenant, nous allons récupérer l'évènement 'click' avant de déclencher notre requête Ajax, et bloquer le pointage naturel du lien vers la page correspondante avec &lt;q&gt;Event(E).stop()&lt;/q&gt;.&lt;/p&gt;
&lt;br /&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;nbsp; // On applique le gestionnaire d'évènement à tous les liens du menu liste&lt;br /&gt;&amp;nbsp; var list = $$('ul#myElement li a');&lt;br /&gt;&amp;nbsp; list.each(function(element) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Gestionnaire d'évènement 'click'&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; element.addEvent('click', function(e){&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // On stoppe le pointage naturel du lien pour ne pas recharger la page&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; e = new Event(e).stop();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;  &amp;nbsp; // Ici notre requête &lt;a href=&quot;http://blog.jflad.com/tag/Ajax%20&quot;&gt;Ajax &lt;/a&gt;décrite plus bas&lt;br /&gt;&amp;nbsp;&amp;nbsp; });&lt;br /&gt;});&lt;/p&gt;
&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;
&lt;p&gt;Un fois que l'on a récupéré l'évènement 'click', il est temps de déclencher notre requête en &lt;a href=&quot;http://blog.jflad.com/tag/Ajax&quot;&gt;Ajax&lt;/a&gt;! Pour ce faire nous allons créer un objet '&lt;a href=&quot;http://blog.jflad.com/tag/Ajax&quot;&gt;Ajax&lt;/a&gt;' de &lt;a href=&quot;http://blog.jflad.com/tag/Mootools%20&quot;&gt;Mootools &lt;/a&gt;avec comme paramètre l'url du fichier &lt;a href=&quot;http://blog.jflad.com/tag/PHP%20&quot;&gt;PHP &lt;/a&gt;qui va traiter notre requête, la méthode de transfert (post ou get), l'encodage des données (uft-8, iso ...), le cadre du conteneur dans lequel vont être affichées les données transférées (update) qui doit être renseigné par le nom de l'id du conteneur. Et enfin, un gestionnaire d'évènements 'onComplete' qui prend en paramètre une fonction, cela permet par exemple de mettre un effet d'apparition sur le conteneur qui affiche les données. Dans un deuxième temps il faut paramètrer la requête &lt;a href=&quot;http://blog.jflad.com/tag/Ajax%20&quot;&gt;Ajax &lt;/a&gt;grâce à la méthode 'request' avec les variable à envoyer au fichier &lt;a href=&quot;http://blog.jflad.com/tag/PHP%20&quot;&gt;PHP &lt;/a&gt;de traitement. Voici le code &lt;a href=&quot;http://blog.jflad.com/tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;de la requête &lt;a href=&quot;http://blog.jflad.com/tag/Ajax&quot;&gt;Ajax&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Requête ajax&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var url = 'ajax.php';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var ajaxRequest = new Ajax(url, {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; method: 'post',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; encoding: 'uft-8',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; onComplete: showSucces(),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; update: log&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; });&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var requestVar = {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var1: 'voila la variable numéro1',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var2: 'voila la variable numéro1',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var3: 'voila la variavle numéro1',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var4: 'voila la variable numéro1',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var5: 'Tutoriel par JFLAD'&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; };&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ajaxRequest.request(requestVar);&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;Il faut maintenant traiter la requête &lt;a href=&quot;http://blog.jflad.com/tag/Ajax%20&quot;&gt;Ajax &lt;/a&gt;avec un fichier &lt;a href=&quot;http://blog.jflad.com/tag/PHP%20&quot;&gt;PHP &lt;/a&gt;qui va retourner le contenu à afficher:&lt;/p&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;  &amp;nbsp;&amp;nbsp;  &amp;nbsp;&amp;nbsp;  &amp;nbsp;&amp;nbsp;  &amp;nbsp;&amp;nbsp;  &lt;blockquote&gt;&lt;p&gt;&amp;lt;?php&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // On récupère les données&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $var1 = $_POST['var1'];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Traitement des données&lt;br /&gt;&amp;nbsp; &amp;nbsp; // Içi vous effectuez vos requêtes SQL et traitement divers&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; // On retourne le contenu a affiché&lt;br /&gt;&amp;nbsp;&amp;nbsp; if(isset($_POST['var1']))&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; print '&amp;lt;p&amp;gt;Votre contenu à afficher...&amp;lt;/p&amp;gt;';&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;?&amp;gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Le traitement en &lt;a href=&quot;http://blog.jflad.com/tag/PHP%20&quot;&gt;PHP &lt;/a&gt;doit être développé comme à l'habitude, à la différence près que vous allez envoyer votre contenu à afficher à votre page &lt;a href=&quot;http://blog.jflad.com/tag/XHTML%20&quot;&gt;XHTML &lt;/a&gt;plutôt que de l'afficher directement. Néanmoins je vous conseille de sécuriser vos fichiers &lt;a href=&quot;http://blog.jflad.com/tag/PHP%20&quot;&gt;PHP &lt;/a&gt;de traitement avec par exemple une &lt;strong&gt;session &lt;/strong&gt;de tests surtout lorsqu'il exécute des requêtes &lt;q&gt;&lt;strong&gt;&lt;em&gt;insert/delete&lt;/em&gt;&lt;/strong&gt;&lt;/q&gt; dans vos bases de données afin d'éviter des injections &lt;a href=&quot;http://blog.jflad.com/tag/SQL&quot;&gt;SQL&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;Dans un prochain tutoriel, je vous montrerai comment apporter une touche d'interactivité à vos évènements grâce à &lt;a href=&quot;http://blog.jflad.com/tag/Mootools%20&quot;&gt;Mootools &lt;/a&gt;et l'utilisation de sa class &lt;q&gt;Fx &lt;/q&gt;!&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.jflad.com/post/Faire-une-requette-en-Ajax-avec-Mootools#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/Faire-une-requette-en-Ajax-avec-Mootools#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/23</wfw:commentRss>
      </item>
    
  <item>
    <title>Le validator W3C utilise Mootools</title>
    <link>http://blog.jflad.com/post/Le-validator-W3C-utilise-Mootools</link>
    <guid isPermaLink="false">urn:md5:7897de5d3f41c44cd26074d1a4598c85</guid>
    <pubDate>Wed, 15 Aug 2007 20:09:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>framework</category><category>Javascript</category><category>Mootools</category><category>W3C</category>    
    <description>    &lt;a href=&quot;http://blog.jflad.com/tag/Mootools%20&quot;&gt;&lt;img style=&quot;margin: 0 1em 1em 0; float: left; width: 267px; height: 79px;&quot; alt=&quot;&quot; src=&quot;http://blog.jflad.com/public/logo/img_actu_306_1.jpg&quot; height=&quot;112&quot; width=&quot;302&quot; /&gt;Mootools &lt;/a&gt;n'en finit plus de convaincre, je viens en effet de me rendre compte que le nouveau site du validator &lt;a href=&quot;http://blog.jflad.com/tag/W3C%20&quot;&gt;W3C &lt;/a&gt;utilise la librairie &lt;a href=&quot;http://blog.jflad.com/tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;&lt;a href=&quot;http://blog.jflad.com/tag/Mootools&quot;&gt;Mootools&lt;/a&gt;, encore un exemple de plus qui illustre les performances des ce &lt;a href=&quot;http://blog.jflad.com/tag/framework&quot;&gt;framework&lt;/a&gt; !&lt;br /&gt;</description>
    
    
    
          <comments>http://blog.jflad.com/post/Le-validator-W3C-utilise-Mootools#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/Le-validator-W3C-utilise-Mootools#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/22</wfw:commentRss>
      </item>
    
  <item>
    <title>Les plugins Mootools indispensable</title>
    <link>http://blog.jflad.com/post/Les-plugins-Mootools-indispensable</link>
    <guid isPermaLink="false">urn:md5:ec7cd2711db31181666aceb3d64d4953</guid>
    <pubDate>Wed, 15 Aug 2007 17:25:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>Ajax</category><category>Mootools</category>    
    <description>    &lt;p&gt;&lt;img style=&quot;margin: 0 1em 1em 0; float: left;&quot; alt=&quot;&quot; src=&quot;http://blog.jflad.com/public/logo/mootools.jpg&quot; /&gt;La communauté de &lt;a href=&quot;http://blog.jflad.com/tag/Mootools&quot;&gt;Mootools&lt;/a&gt; se développe à vive allure et l'on voit déjà émerger de nombreuses &lt;strong&gt;extensions &lt;/strong&gt;et &lt;strong&gt;plugins &lt;/strong&gt;bien pratiques. J'ai essayé de faire un concentré des meilleurs &lt;strong&gt;scripts &lt;/strong&gt;que j'ai trouvé. Voici une sélection des meilleurs liens dans différents domaines d'utilisation:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://www.digitalia.be/software/slimbox&quot;&gt;Slimbox &lt;/a&gt;: Galerie d'image comme &lt;strong&gt;LightBox &lt;/strong&gt;mais beaucoup plus léger que &lt;strong&gt;lightBox &lt;/strong&gt;pour le même résultat.&lt;/li&gt;
&lt;li&gt;&lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://homepage.mac.com/yukikun/software/slimbox_ex/&quot;&gt;Slimbox_ex&lt;/a&gt;: Extension de &lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://www.digitalia.be/software/slimbox&quot;&gt;Slimbox&lt;/a&gt; pour ouvrir une page dans un &lt;strong&gt;Iframe&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://www.e-magine.ro/web-dev-and-design/36/moodalbox/&quot;&gt;Moodalbox&lt;/a&gt;: Extension de &lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://www.digitalia.be/software/slimbox&quot;&gt;Slimbox&lt;/a&gt; pour ouvrir un formulaire en &lt;a href=&quot;http://blog.jflad.com/tag/Ajax&quot;&gt;Ajax&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://www.phatfusion.net/slideshow/&quot;&gt;Slideshow&lt;/a&gt;: Galerie d'image en Ajax très sympa et totalement paramétrable.&lt;/li&gt;
&lt;li&gt;&lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://joomlicious.com/mootable/&quot;&gt;Mootable&lt;/a&gt;: Création d'un tableau en &lt;a href=&quot;http://blog.jflad.com/tag/Ajax%20&quot;&gt;Ajax &lt;/a&gt;avec tri sur les elements et affichage multiple.&lt;/li&gt;
&lt;li&gt;&lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://www.phatfusion.net/sortabletable/index.htm&quot;&gt;SortableTable&lt;/a&gt;: Même principe que &lt;a hreflang=&quot;en&quot; href=&quot;http://joomlicious.com/mootable/&quot;&gt;Mootable&lt;/a&gt; mois complet mais mieux fini.&lt;/li&gt;
&lt;li&gt;&lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://www.chrisesler.com/mootools/fisheye/index.php&quot;&gt;Fisheye&lt;/a&gt;: Création d'un menu 'dock'.&lt;/li&gt;
&lt;li&gt;&lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://www.phatfusion.net/roundedcorners/index.htm&quot;&gt;Phatfusion&lt;/a&gt;: Pour faire des cadres arrondies sans image de background comme &lt;a hreflang=&quot;fr&quot; href=&quot;http://blog.jflad.com/post/Nifty-plus-de-CSS-pour-faire-des-cadres-arrondies&quot;&gt;Niffty&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://www.silverscripting.com/mootabs/&quot;&gt;MooTabs&lt;/a&gt;: Menu à onglet original et interactif.&lt;/li&gt;
&lt;li&gt;&lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://www.phatfusion.net/formvalidation/index.htm&quot;&gt;FormValidation&lt;/a&gt;: Validation de formulaire en &lt;a href=&quot;http://blog.jflad.com/tag/Ajax&quot;&gt;Ajax.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://seri.ous.ly/draggable_tree/&quot;&gt;DraggableTree&lt;/a&gt;: Arbre de navigation éditable en glisser déposer.&lt;/li&gt;
&lt;li&gt;&lt;a style=&quot;font-weight: bold;&quot; hreflang=&quot;en&quot; href=&quot;http://www.frequency-decoder.com/demo/date-picker-v2/&quot;&gt;DatePicker V2&lt;/a&gt;: Insertion d'une date vie un calendrier, interactif et totalement modulable.&lt;/li&gt;
&lt;/ul&gt;</description>
    
    
    
          <comments>http://blog.jflad.com/post/Les-plugins-Mootools-indispensable#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/Les-plugins-Mootools-indispensable#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/21</wfw:commentRss>
      </item>
    
  <item>
    <title>Mootools et DomReady</title>
    <link>http://blog.jflad.com/post/2007/08/13/Mootools-et-DomReady</link>
    <guid isPermaLink="false">urn:md5:c9ab3ea714a30d4fd9bc3e3132fe225d</guid>
    <pubDate>Mon, 13 Aug 2007 12:51:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>hypertexte</category>    
    <description>    &lt;img style=&quot;margin: 0 1em 1em 0; float: left;&quot; alt=&quot;&quot; src=&quot;http://blog.jflad.com/public/logo/mootools.jpg&quot; /&gt;La librairie &lt;a hreflang=&quot;en&quot; href=&quot;http://www.motools.net&quot;&gt;Mootools &lt;/a&gt;possède un gestionnaire d'évènement &lt;a hreflang=&quot;en&quot; href=&quot;http://docs.mootools.net/Window/Window-DomReady.js&quot;&gt;DomReady &lt;/a&gt;très puissant qui détecte avec précision le moment ou le &lt;strong&gt;DOM est opérationnel &lt;/strong&gt;à la différence des &lt;strong&gt;framework &lt;/strong&gt;concurrent ! Cela peut paraitre inutile à certain vu l'existence du gestionnaire d'évènement &lt;strong&gt;'onload'. &lt;/strong&gt;Néanmoins, ce gestionnaire est beaucoup plus puissant, et permet de tester non pas si tout les éléments constitutif d'une &lt;strong&gt;page Internet&lt;/strong&gt; sont chargés (documents &lt;a href=&quot;http://blog.jflad.com/tag/hypertexte&quot;&gt;hypertexte&lt;/a&gt;, feuille de style, images ...) ce qui est effectué par le gestionnaire &lt;strong&gt;'onload'&lt;/strong&gt; mais de vérifier que le Dom est prêt ! &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Utilisation du gestionnaire:&lt;br /&gt;&lt;/strong&gt;
&lt;blockquote&gt;&lt;p&gt;window.&lt;span class=&quot;me1&quot;&gt;addEvent&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'domready'&lt;/span&gt;, &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;{&lt;/span&gt;&lt;br /&gt;  &lt;span class=&quot;kw3&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;'the dom is ready'&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;)&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;)&lt;/span&gt;;&lt;/p&gt;
&lt;/blockquote&gt;</description>
    
    
    
          <comments>http://blog.jflad.com/post/2007/08/13/Mootools-et-DomReady#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/2007/08/13/Mootools-et-DomReady#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/19</wfw:commentRss>
      </item>
    
  <item>
    <title>Beaucoup d'amalgame dans le mot Ajax</title>
    <link>http://blog.jflad.com/post/Beaucoup-damalgame-dans-le-mot-Ajax</link>
    <guid isPermaLink="false">urn:md5:9d15fe5d8319451c3e1646d2ecfeef51</guid>
    <pubDate>Wed, 08 Aug 2007 17:45:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>Ajax</category><category>asynchrone</category><category>framework</category><category>interactivité</category><category>Javascript</category><category>JFLAD</category><category>Mootools</category><category>Web 2.0</category><category>XHTML</category>    
    <description>    &lt;img style=&quot;margin: 0 1em 1em 0; float: left; width: 256px; height: 223px;&quot; alt=&quot;&quot; src=&quot;http://blog.jflad.com/public/logo/ajax.png&quot; /&gt;A force de m'intéresser de très prêt à &lt;a href=&quot;http://blog.jflad.com/blog/index.php?tag/Ajax&quot;&gt;Ajax&lt;/a&gt;, je constate qu'il y énormément d'amalgame de fait à ce sujet! En effet, beaucoup pense que faire une requête en &lt;strong&gt;httpRequest&lt;/strong&gt; au &lt;q&gt;onclick&lt;/q&gt; d'un bouton constitue de l'&lt;a href=&quot;http://blog.jflad.com/blog/index.php?tag/Ajax&quot;&gt;Ajax&lt;/a&gt;. Hors la véritable utilisation de &lt;a href=&quot;http://blog.jflad.com/blog/index.php?tag/Ajax%20&quot;&gt;Ajax &lt;/a&gt;est véritablement ailleurs, la subtilité réside de faire un interface Web dont toute l'&lt;a href=&quot;http://blog.jflad.com/index.php?tag/interactivit%C3%A9&quot;&gt;interactivité&lt;/a&gt; &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;(dont les transferts asynchrone de donnée) sont Indépendante de l'application principale, c'est à dire que si le site le client ne possède pas &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Javascript&quot;&gt;Javascript&lt;/a&gt;, le site marche quand même normalement. Cela va plus loin, car cette méthode permet également de référencé les contenus des pages même si elles sont chargés de manière &lt;a href=&quot;http://blog.jflad.com/blog/index.php?tag/asynchrone&quot;&gt;asynchrone&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;Il faut que le document &lt;a href=&quot;http://blog.jflad.com/index.php?tag/XHTML%20&quot;&gt;&lt;strong&gt;XHTML &lt;/strong&gt;&lt;/a&gt;ne possède aucun script &lt;a href=&quot;http://blog.jflad.com/blog/index.php?tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;dans le &lt;strong&gt;body&lt;/strong&gt;, mais juste l'appelle au &lt;strong&gt;librairie &lt;/strong&gt;utilisées dans le header.
&lt;br /&gt;&lt;br /&gt;La technique est simple pour faire ceci, il faut utilisé les gestionnaires d'évènements ainsi que les sélecteurs d'éléments. Ainsi un site traditionnel pourra ce voir gréfer un ensemble évènementiel qui permettra de rendre un interface Web interactive. Le seul supplément sera de crée un fichier 'dataTransfert.php' qui transféra les &lt;strong&gt;templates &lt;/strong&gt;de contenu. Autrement tout le reste sera simplement des librairie &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Javascript%20&quot;&gt;&lt;ins&gt;J&lt;/ins&gt;&lt;/a&gt;&lt;a href=&quot;http://blog.jflad.com/blog/index.php?tag/javascript%20&quot;&gt;avascript &lt;/a&gt;qui déclencheront des actions suivant un système évènementiel.
&lt;br /&gt;&lt;br /&gt;&lt;ins&gt;Voici un exemple de ce qu'il ne faut pas faire (gestionnaire d'évènement directement dans le document &lt;a href=&quot;http://blog.jflad.com/tag/XHTML&quot;&gt;XHTML&lt;/a&gt;):&lt;br /&gt;&lt;br /&gt;&lt;/ins&gt;&lt;blockquote&gt;&lt;p&gt;&amp;lt;p id=&quot;monBouton&quot; onclick=&quot;maFoncitonJs();&quot;&amp;gt;Cliquez moi&amp;lt;/p&amp;gt;&lt;/p&gt;
&lt;/blockquote&gt;&lt;ins&gt;&lt;br /&gt;Voici le même exemple, mais correcte cette fois ci (fichier javascript inclus dans le header):&lt;br /&gt;&lt;br /&gt;&lt;/ins&gt;&lt;blockquote&gt;&lt;p&gt;&amp;nbsp;$'(monBouton').addEvent('click', function(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Contenu de ma fonction&lt;br /&gt;&amp;nbsp; });&lt;/p&gt;
&lt;/blockquote&gt;&lt;br /&gt;Ce principe est la base, à partir de découle tout le reste, le Blog &lt;a href=&quot;http://blog.jflad.com/index.php?tag/JFLAD%20&quot;&gt;JFLAD &lt;/a&gt;vous présentera ultérieurement d'autres techniques pour faire des transferts &lt;a href=&quot;http://jflad.com/blog/index.php?tag/asynchrone&quot;&gt;asynchrone&lt;/a&gt; de données depuis une page traditionnelle en gardant une lisibilité dans les moteurs de recherche!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Je vous conseil fortement l'utilisation du &lt;a href=&quot;http://blog.jflad.com/blog/index.php?tag/framework%20&quot;&gt;framework &lt;/a&gt;&lt;a hreflang=&quot;en&quot; href=&quot;http://www.mootools.net&quot;&gt;Mootools &lt;/a&gt;dont j'ai déjà fait l'éloge dans de précédent billet, ce &lt;a href=&quot;http://blog.jflad.com/blog/index.php?tag/framework%20&quot;&gt;framework &lt;/a&gt;est vraiment sur-puissant, et possède toutes les fonctionnalités imaginable pour faire de l'&lt;a href=&quot;http://blog.jflad.com/blog/index.php?tag/Ajax%20&quot;&gt;Ajax &lt;/a&gt;et rendre une application Web riche version &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Web%202.0&quot;&gt;Web 2.0&lt;/a&gt;.</description>
    
    
    
          <comments>http://blog.jflad.com/post/Beaucoup-damalgame-dans-le-mot-Ajax#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/Beaucoup-damalgame-dans-le-mot-Ajax#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/12</wfw:commentRss>
      </item>
    
  <item>
    <title>Mootools confirme ses bonnes performance</title>
    <link>http://blog.jflad.com/post/Mootools-confirme-ses-bonnes-performance</link>
    <guid isPermaLink="false">urn:md5:a27ba0b5d4636d2162a2589c4e0be51c</guid>
    <pubDate>Mon, 25 Jun 2007 15:34:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>Ajax</category><category>Javascript</category><category>JFLAD</category><category>prototype</category><category>Web 2.0</category>    
    <description>    &lt;img style=&quot;margin: 0 1em 1em 0; float: left;&quot; alt=&quot;&quot; src=&quot;http://blog.jflad.com/public/logo/mootools.jpg&quot; /&gt;&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://www.mootools.net&quot; hreflang=&quot;en&quot;&gt;Mootools&lt;/a&gt;&lt;/strong&gt;, la librairie &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Javacript%20&quot;&gt;Javacript &lt;/a&gt; &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Web%202.0&quot;&gt;Web 2.0&lt;/a&gt;, confirme ses très bonnes performances. &lt;/p&gt;
&lt;p&gt;En effet, l'application &lt;a href=&quot;http://mootools.net/slickspeed/&quot; hreflang=&quot;en&quot;&gt;slickspeed&lt;/a&gt; permet de tester les librairies &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;bien connues: &lt;a href=&quot;http://blog.jflad.com/index.php?tag/prototype&quot;&gt;prototype&lt;/a&gt;, jQuery 1.1.2, MooTools 1.2, ext1.1b1, cssQuery 2.02 et dojo query. Les tests permettent de tester la vitesse d'exécution et la validités des scripts. Les résultats obtenus sont très favorable à &lt;strong&gt;&lt;a href=&quot;http://www.mootools.net&quot; hreflang=&quot;en&quot;&gt;Mootools&lt;/a&gt;&lt;/strong&gt;, ce qui confirme le sérieux et la qualité de cette librairie.&lt;/p&gt;
&lt;p&gt;Dans un prochain billet, un exemple d'utilisation avec &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Ajax&quot;&gt;&lt;strong&gt;Ajax&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.jflad.com/post/Mootools-confirme-ses-bonnes-performance#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/Mootools-confirme-ses-bonnes-performance#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/1</wfw:commentRss>
      </item>
    
  <item>
    <title>Mootools, LA librairie Web 2.0</title>
    <link>http://blog.jflad.com/post/Mootools-LA-librairie-web-20</link>
    <guid isPermaLink="false">urn:md5:8899909128f0b1c6b541942a43ca0b3f</guid>
    <pubDate>Mon, 18 Jun 2007 21:18:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>Ajax</category><category>Flash</category><category>framework</category><category>Javascript</category><category>JFLAD</category><category>Penner</category><category>scriptaculus</category>    
    <description>    &lt;p&gt;&lt;a href=&quot;http://mootools.net&quot; hreflang=&quot;en&quot;&gt;&lt;img style=&quot;margin: 0 1em 1em 0; float: left;&quot; alt=&quot;&quot; src=&quot;http://blog.jflad.com/public/logo/mootools.jpg&quot; /&gt;Mootools&lt;/a&gt; est une librairie &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;comme je les aime… Elle repose sur le &lt;a href=&quot;http://blog.jflad.com/index.php?tag/framework%20&quot;&gt;framework &lt;/a&gt;de &lt;a href=&quot;http://blog.jflad.com/index.php?tag/scriptaculus&quot;&gt;scriptaculus&lt;/a&gt;, dont j’avais déjà fait l’éloge sur le &lt;a hreflang=&quot;fr&quot; href=&quot;http://blog.jflad.com/admin/post.php?id=2&quot;&gt;blog&lt;/a&gt; il y a quelques mois. De plus, on retrouve également les fonctions de &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Penner%20&quot;&gt;Penner &lt;/a&gt;qui sont à l’origine des effets de déplacement élastique dans &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Flash%20&quot;&gt;Flash &lt;/a&gt;et maintenant en &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Javascript&quot;&gt;Javascript&lt;/a&gt;. Le plus de cette librairie est d’être mieux structuré, optimisé et plus légère. L'ensemble des fonctions graphique 'FX' est particulièrement sympathique et très simple d'utilisation.
&lt;/p&gt;
&lt;p&gt;Elle présente un vaste éventail de possibilités&amp;nbsp;:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Transfert de données en &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Ajax&quot;&gt;Ajax&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Transfert de données en &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Ajax%20&quot;&gt;Ajax &lt;/a&gt;avec &lt;a href=&quot;http://blog.jflad.com/index.php?tag/JSON&quot;&gt;Json&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Effet graphique divers avec l'interface MX combiné avec la suite de &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Penner&quot;&gt;Penner&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Une gestion des éléments de la page simplifié, par exemple: $('nomId') = document.getElementById('monId')&lt;/li&gt;
&lt;li&gt;Légèreté de fonctionnement vraiment étonnante&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;Je vais m’arrête la car il y a vraiment &lt;strong&gt;trop&lt;/strong&gt; de fonctionnalité disponible et je vous invite à les tester par vous-même sur la &lt;a href=&quot;http://demos.mootools.net/&quot; hreflang=&quot;en&quot;&gt;démos&lt;/a&gt; en ligne.</description>
    
    
    
          <comments>http://blog.jflad.com/post/Mootools-LA-librairie-web-20#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/Mootools-LA-librairie-web-20#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/2</wfw:commentRss>
      </item>
    
  <item>
    <title>Ajaxload préchargement en AJAX</title>
    <link>http://blog.jflad.com/post/Ajaxload-prechargement-en-AJAX</link>
    <guid isPermaLink="false">urn:md5:3e30eb4febf49b1e06059e1affa25f41</guid>
    <pubDate>Fri, 09 Feb 2007 10:11:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>Ajax</category><category>Web 2.0</category>    
    <description>    &lt;img style=&quot;margin: 0 1em 1em 0; float: left; width: 404px; height: 124px;&quot; alt=&quot;&quot; src=&quot;http://blog.jflad.com/public/logo/ajaxload.png&quot; /&gt;
&lt;p&gt;Pour faire des pré-chargements en &lt;a href=&quot;http://blog.jflad.com/index.php?tag/AJAX%20&quot;&gt;Ajax&lt;/a&gt; à la sauce &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Web%202.0&quot;&gt;Web 2.0&lt;/a&gt;. La méthode est très simple, faire une barre de progression en gif animé! Le site &lt;a href=&quot;http://www.ajaxload.info/&quot; hreflang=&quot;en&quot;&gt;ajaxload&lt;/a&gt; propose un générateur de divers gif de pré-chargement bien pratique. A vous de créer !&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.jflad.com/post/Ajaxload-prechargement-en-AJAX#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/Ajaxload-prechargement-en-AJAX#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/5</wfw:commentRss>
      </item>
    
  <item>
    <title>Nifty, plus de CSS pour faire des cadres arrondies</title>
    <link>http://blog.jflad.com/post/Nifty-plus-de-CSS-pour-faire-des-cadres-arrondies</link>
    <guid isPermaLink="false">urn:md5:c107efea7ff85dd7694f25e99b535f52</guid>
    <pubDate>Fri, 09 Feb 2007 10:00:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>CSS</category><category>Javascript</category>    
    <description>    &lt;p&gt;&lt;a href=&quot;http://www.html.it/articoli/nifty/index.html&quot; hreflang=&quot;en&quot;&gt;Nifty&lt;/a&gt; est une librairie &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Javascript&quot;&gt;Javascript&lt;/a&gt;, très simple d'utilisation qui permet de faire des cadres arrondis sans passer par les &lt;a href=&quot;http://blog.jflad.com/index.php?tag/CSS%20&quot;&gt;CSS &lt;/a&gt;!!! Voici une petite &lt;a href=&quot;http://www.html.it/articoli/nifty/nifty1.html&quot; hreflang=&quot;en&quot;&gt;démo&lt;/a&gt;.
&lt;br /&gt;
Pour l'utiliser c'est très simple:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;window.onload=function(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(!NiftyCheck()) return;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; RoundedTop(&quot;div#container&quot;,&quot;#FFF&quot;,&quot;#e7e7e7&quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; RoundedBottom(&quot;div#container&quot;,&quot;#FFF&quot;,&quot;#E9F398&quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; RoundedTop(&quot;ul#nav li&quot;,&quot;transparent&quot;,&quot;#E8F0FF&quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rounded(&quot;div#box&quot;,&quot;#C0CDF2&quot;,&quot;#E4E7F2&quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rounded(&quot;div#minipics li&quot;,&quot;#C0CDF2&quot;,&quot;#FFF&quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; RoundedTop(&quot;div.gradient&quot;,&quot;#C0CDF2&quot;,&quot;#B8B8B8&quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; RoundedBottom(&quot;div.gradient&quot;,&quot;#C0CDF2&quot;,&quot;#ECECF2&quot;);&lt;br /&gt;
}&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Appliquer la function &lt;strong&gt;RoundedTop&lt;/strong&gt; sur les éléments que vous voulez en précisant son id, sa couleur et son fond. Vraiment très pratique!&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.jflad.com/post/Nifty-plus-de-CSS-pour-faire-des-cadres-arrondies#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/Nifty-plus-de-CSS-pour-faire-des-cadres-arrondies#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/6</wfw:commentRss>
      </item>
    
  <item>
    <title>JSON l'avenir des transferts de données en AJAX</title>
    <link>http://blog.jflad.com/post/JSON-lavenir-des-transferts-de-donnees-en-AJAX</link>
    <guid isPermaLink="false">urn:md5:c046e1d20458d3d0e03fb59970843865</guid>
    <pubDate>Fri, 09 Feb 2007 08:25:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>Ajax</category><category>framework</category><category>Javascript</category><category>Json</category><category>XML</category><category>Zend</category>    
    <description>    &lt;p&gt;&lt;a href=&quot;http://www.json.org/&quot; hreflang=&quot;us&quot;&gt;JSON&lt;/a&gt; (JavaScript Object Notation) est un format de structure de données générique qui utilise la notation des objects &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Javascript&quot;&gt;Javascript&lt;/a&gt;. Il peut être utilisé pour transmettre de l'information structurée du client au serveur dans des applications &lt;a href=&quot;http://blog.jflad.com/index.php?tag/AJAX&quot;&gt;Ajax&lt;/a&gt;, c'est d'ailleur sa plus grosse utilisation à l'heure actuel. Il s'agit d'un format de fichier alternatif à &lt;a href=&quot;http://blog.jflad.com/index.php?tag/XML&quot;&gt;XML&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;
&lt;strong&gt;Voilà un modèle de structure de donnée JSON:&lt;/strong&gt;
&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;{&quot;menu&quot;: {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &quot;id&quot;: &quot;file&quot;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &quot;value&quot;: &quot;File&quot;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &quot;popup&quot;: {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &quot;menuitem&quot;: [&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&quot;value&quot;: &quot;New&quot;, &quot;onclick&quot;: &quot;CreateNewDoc()&quot;},&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&quot;value&quot;: &quot;Open&quot;, &quot;onclick&quot;: &quot;OpenDoc()&quot;},&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&quot;value&quot;: &quot;Close&quot;, &quot;onclick&quot;: &quot;CloseDoc()&quot;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
}}&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;br /&gt;
Coté serveur il vous faudra simplement encoder et décoder la chaine, je vous conseil d'utiliser la class &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Zend&quot;&gt;Zend&lt;/a&gt;_&lt;a href=&quot;http://blog.jflad.com/index.php?tag/Json%20&quot;&gt;Json &lt;/a&gt;du &lt;a href=&quot;http://blog.jflad.com/index.php?tag/framework%20&quot;&gt;framework &lt;/a&gt;&lt;strong&gt;&lt;a href=&quot;http://framework.zend.com/manual/en/zend.json.html&quot; hreflang=&quot;en&quot;&gt;zend&lt;/a&gt;&lt;/strong&gt;  pour effectuer cette opération.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;// Récupérer les valeurs&lt;br /&gt;
$phpNative = Zend_Json::decode($encodedValue);&lt;br /&gt;
&lt;br /&gt;
// Encoder les valeurs&lt;br /&gt;
$json = Zend_Json::encode($phpNative);&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Par ailleurs, il n'est plus nécessaire de faire appel à un parseur &lt;a href=&quot;http://blog.jflad.com/index.php?tag/XML%20&quot;&gt;XML &lt;/a&gt;pour gérer les données, étant donné qu'elles sont directement prises en compte par &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;via la fonction eval().
Les tests actuels montrent un gain significatif en vitesse de traitement pour &lt;a href=&quot;http://blog.jflad.com/index.php?tag/JSON&quot;&gt;Json&lt;/a&gt;.&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.jflad.com/post/JSON-lavenir-des-transferts-de-donnees-en-AJAX#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/JSON-lavenir-des-transferts-de-donnees-en-AJAX#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/7</wfw:commentRss>
      </item>
    
  <item>
    <title>Scriptaculous la librairie javascript tendance</title>
    <link>http://blog.jflad.com/post/Scriptaculous-la-librairie-javascript-tendance-du-moment</link>
    <guid isPermaLink="false">urn:md5:850e8c2acf989fb691a2d7538a95fdf8</guid>
    <pubDate>Wed, 07 Feb 2007 18:14:00 +0000</pubDate>
    <dc:creator>julien lavault</dc:creator>
        <category>Ajax</category>
        <category>Ajax</category><category>Flash</category><category>interactivité</category><category>Javascript</category><category>JFLAD</category><category>librairie</category><category>Web 2.0</category>    
    <description>    &lt;p&gt;&lt;img style=&quot;margin: 0 1em 1em 0; float: left; width: 345px; height: 95px;&quot; alt=&quot;&quot; src=&quot;http://blog.jflad.com/public/logo/scriptaculous.jpg&quot; /&gt;Un peu d'&lt;a href=&quot;http://blog.jflad.com/index.php?tag/interactivit%C3%A9%20&quot;&gt;interactivité &lt;/a&gt;dans les pages Web statique à la sauce &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Web%202.0&quot;&gt;Web 2.0&lt;/a&gt;. Pour ce qui ne connaisse pas encore la librairie &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Javascript%20&quot;&gt;Javascript &lt;/a&gt;&lt;a href=&quot;http://script.aculo.us/&quot; hreflang=&quot;us&quot;&gt;scriptaculous&lt;/a&gt;, cette &lt;a href=&quot;http://blog.jflad.com/index.php?tag/librairie%20&quot;&gt;librairie &lt;/a&gt;sert à manipulée vos objets (&amp;lt;balise&amp;gt;) du dom avec une &lt;a href=&quot;http://blog.jflad.com/index.php?tag/interactivit%C3%A9%20&quot;&gt;interactivité &lt;/a&gt;hors du commun et à faire des applications en &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Ajax&quot;&gt;Ajax&lt;/a&gt;. Je l'utilise tellement ces derniers temps et c'est d'ailleurs devenu une des spécialités de &lt;a href=&quot;http://blog.jflad.com/index.php?tag/JFLAD&quot;&gt;JFLAD&lt;/a&gt;, il était donc naturel que je contribue à sa promotion. Ces scripts de &lt;strong&gt;qualités&lt;/strong&gt;  apportent une véritable valeur ajoutée à une page Web statique! Il permet également de facilité la gestion de donnée dans les back-offices, je pense notamment à la gestion simplifier du glisser déposé. Bref une multitudes d'outils à adapté suivant les besoins!
&lt;br /&gt;
En plus du glissé déposé, il est également possible de faire des transfert de données en &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Ajax&quot;&gt;Ajax&lt;/a&gt;, des effets graphique sur les objets du Dom, des scroll-bars personnalisées...
&lt;br /&gt;&lt;br /&gt;
Voici quelques exemples qui illustreront plus explicitement ma description:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://demo.script.aculo.us/shop&quot; hreflang=&quot;us&quot;&gt;Drag and Drop AJAX Shopping Cart&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://demo.script.aculo.us/ajax/autocompleter&quot; hreflang=&quot;us&quot;&gt;Autocompleting AJAX text fields&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://demo.script.aculo.us/ajax/autocompleter_customized&quot; hreflang=&quot;us&quot;&gt;Autocompleting text fields – customized&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://demo.script.aculo.us/ajax/sortable_elements&quot; hreflang=&quot;us&quot;&gt;Sortable elements w/AJAX callback&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://wiki.script.aculo.us/scriptaculous/show/CombinationEffectsDemo&quot; hreflang=&quot;us&quot;&gt;Combination Effects Demo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://wiki.script.aculo.us/scriptaculous/page/print/GhostlySortableDemo&quot; hreflang=&quot;us&quot;&gt;GhostlySortableDemo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://wiki.script.aculo.us/scriptaculous/page/print/SortableFloatsDemo&quot; hreflang=&quot;us&quot;&gt;SortableFloatsDemo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://wiki.script.aculo.us/scriptaculous/page/print/SortableListsDemo&quot; hreflang=&quot;us&quot;&gt;SortableListsDemo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://wiki.script.aculo.us/scriptaculous/show/SliderDemo&quot; hreflang=&quot;us&quot;&gt;Slider Demo&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;
&lt;br /&gt;
Finalement l'interactivité ne rime par forcément avec &lt;a href=&quot;http://blog.jflad.com/index.php?tag/Flash&quot;&gt;Flash&lt;/a&gt;!!! Son utilisation est vraiment très simple et d'une très grande adaptabilité. J'espère que j'aurais contribué à faire de nouveau adeptes.&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.jflad.com/post/Scriptaculous-la-librairie-javascript-tendance-du-moment#comment-form</comments>
      <wfw:comment>http://blog.jflad.com/post/Scriptaculous-la-librairie-javascript-tendance-du-moment#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.jflad.com/feed/rss2/comments/9</wfw:commentRss>
      </item>
    
</channel>
</rss>