Table des matieres

Chut, ca charge ...

Tutoriel Mootools, framework Javascript gratuit


logo mootools

Bon les noobs, aujourd’hui nous allons voir un ptit tutoriel sur Mootools, le framework Javascript qui va te permettre de faire plein de trucs de fous et grâce auquel tu va bientôt pouvoir te la péter auprès de tes amis geeks :)

Oui parce que en ce moment c’est la mode les frameworks (=bibliothèque de classes spécialisées orientées objet, eh oui je t’explique tout ami noob) et il est important que tu sois au top niveau.

Je te tutoie parce que, par défaut, tu es mon ami, allez sois sympa quoi :) Mais ne t’inquiète pas , je ne le ferais pas souvent ;) Allez trêve de plaisanterie, c’est parti !

Ce tutoriel est basé sur la version 0.83 de Mootools, il se peut donc que certaines choses ne fonctionnent pas avec la version 1.0 . D’autres tutoriels sur Mootools sont disponibles.

Pourquoi Mootools ?

Pour comprendre ce choix, regardons rapidement ce qui existe en ce moment (cette liste n’est pas exhaustive, c’est juste un aperçu):

  • Dojo
    J’ai pas vraiment eu le temps de tester mais l’ayant déjà vu en action dans une appli d’un pote , je sais qu’elle est très puissante mais je ne saurais t’en dire plus. Si tu as des infos ,hésite pas les commentaires sont là pour ça :)
  • Yahoo! UI Library
    Le framework de Yahoo, j’ai testé rapidement , c’est très bien documenté comme d’habitude, c’est clair avec plein d’exemples (à condition de lire de l’anglais :) )
    Le seul défaut que j’ai pu trouver, c’est le poids, pour faire des effets de base ça me parait trop 50ko.
    Sur ce blog, tu pourras voir des exemples très impressionnants de ce qu’il est possible de faire avec le framework de Yahoo!. En particulier cet exemple d’intégration de commentaire qui déboite est très bien faite.
  • script.aculo.us
    Un des premiers framework que j’ai utilisé, très puissant, un peu trop lourd niveau poids, de belles démos sur le site, mais une documentation pas suffisament claire à mon goût.
  • ByteFX
    Ce n’est pas réellement un framework , plutôt une petite librairie vraiment orienté effets visuels simples. Une documentation et un site vraiment léger, comme le poids de cette librairie
  • Moo.fx
    Toute petite librairie comme ByteFX. Orientée effets visuels également. Mootools se base sur cette librairie.

Toutes ces frameworks sont très bien mais puisqu’il fallait en choisir un, que je venais justement de tester Mootools, qu’il me paraissait vraiment prometteur, puissant, souvent mis à jour avec une belle communauté derrière, je me suis dit qu’il fallait que je vous en fasse profiter.

Oui, je sais, je suis trop bon.

Présentation de Mootools

Je suppose que tu as déjà ouvert le site de Mootools dans un autre onglet de ton tout nouveau Firefox 2.0 , si ce n’est pas le cas , c’est le moment ou jamais :) Je te conseille même d’installer Firebug, ca te sera utile.

Tu remarqueras qu’il y a plein de blabla écrit en tout petit et en anglais, je suppose que tu ne l’a pas lu c’est pourquoi je vais t’en faire un petit resumé :

Mootools c’est un framework javascript orienté objet, très modulaire et léger. Il est compatible avec une grande majorité de navigateurs et un choix parmi plus de 15 scripts, plugins, addons est disponible.(Effets, Ajax,Drag and Drop, liste organisable, gestion de cookie et bien plus encore !)
Tres modulaire car il est possible de télécharger une version de Mootools qui correspond exactement à vos besoin avec l’outil dédié spécifique.

Alors pour bien comprendre ce que peut faire Mootools, on peut déjà avoir un aperçu des nombreuses démos disponibles sur le site . Il y en a d’autres sympas,là , ici, là et relà .

On peut voir également quelques projets plus aboutis comme :

  • Slimbox, clone de Lightbox en plus puissant mais basé sur Mootools.
  • Transcorner qui permet de faire des cadres arrondis sans images , qu’avec Mootools, très facilement.
  • Un slider facilement modifiable et puissant.
  • Un diaporama configurable.

Il suffit de regarder les sources de ces exemples pour voir la relative simplicité d’utilisation de Mootools.

Bon il est temps de s’y mettre…

Télécharger Mootools :

Pour commencer il nous faut télécharger Mootools.

interface de téléchargement de Mootools

Voila comment se présente l’outil de téléchargement de Mootools dans lequel on peut choisir quels sont les scripts que nous voulons.

Il y a 4 catégories :

  • Main Lib : La librairie indispensable
  • Native Scripts : composé de 4 scripts afin de gérer les fonctions, les tableaux, les chaines et les éléments
  • Addons : Fx.js permet de gérer les effets de base, Dom.js les éléments DOM, Ajax.js pour pouvoir faire le malin avec des chargements de données sans rechargement de page et enfin Drag.js pour gérer les Drag d’un objet.
  • Plugins : Windows.js pour avoir des infos sur la fenêtre, Cookie.js pour gérer tres facilement les Cookies, Json.js pour la syntaxe Json mais je connais pas trop alors je ne préfere pas trop m’étendre, Sortables pour pouvoir organiser des listes par exemple, FxPack, FxUtils et Fxtransitions pour des effets graphiques plus avancées, Tips.js pour les infobulles et Accordion.js permet les affichages en accordéons.

Il est à noter que certains addons ou plugins dépendent d’autres scripts qui seront alors automatiquement cochés.
Pour tester une première fois je vous conseille de tout cocher.

Une fois les choix effectués il est possible de récupérer le fichier Javascript en version plus ou moins compressée. Plus on compresse, plus le fichier Javascript généré devient illisible par un éditeur. On ne va pas avoir besoin de modifier le fichier alors autant compresser au maximum. (version non compressée : 90ko , compressée : 24ko)

Utilisation de Mootools par la pratique : Création d’une galerie

Pour comprendre comment utiliser Mootools , mettons nous en situation :)

Nous allons faire une jolie galerie avec au programme : un effet accordéon, un peu d’ajax, des infobulles,du slimbox avec une petite pincée de CSS et de HTML. Voila le résultat final qu’on va devrait obtenir :

voir le resultat final galerie mootools

J’ai mis des bonnasses pour ce tutoriel mais vous êtes pas obligé de faire tout comme moi . Disons que c’est plus motivant pour travailler :)

Allez c’est parti pour 7 étapes de folies !

Etape 1 : On définit notre menu accordéon en HTML

Alors pour commencer on va créer un fichier tutoriel_mootools.html dans lequel on va inclure notre fichier Javascript fraichement téléchargé. (je suppose que les 2 fichiers sont dans le même répertoire, on va faire au plus simple)

<!-- inclusion du fichier Mootools-->

<script src="mootools.release.83.js" type="text/javascript"></script>

On y ajoute le code de base HTML pour notre menu de navigation (je suppose que tu sais au moins les bases, sinon tu peux toujours aller voir chez là pour rattraper ton retard).

  <!-- ici notre barre de navigation en accordeon-->

 
<h4 class="toggler"><a href="#cat_blonde">Blonde (3)</a></h4>
 
<ul>
<li><a href="javascript:afficher('pamela');">Pamela</a></li>
<li><a href="javascript:afficher('jordan');">Jordan</a></li>
<li><a href="javascript:afficher('ophelie');">Ophélie</a></li>
</ul>
<h4 class="toggler"><a href="#cat_brune">Brune (2)</a></h4>
 
<ul>
<li><a href="javascript:afficher('jessica');">Jessica</a></li>
<li><a href="javascript:afficher('jennifer');">Jennifer</a></li>
</ul>
<h4 class="toggler"><a href="#cat_rousse">Rousse (1)</a></h4>
 
<ul>
<li><a href="javascript:afficher('julia');">Julia</a></li>
</ul>
<!-- ici notre conteu mis a jour en ajax-->

 

On obtient donc ce résultat pour l’étape 1. N’hésite pas à regarder les sources (clic droit -> voir source).

Pour l’instant la fonction afficher() n’est pas encore définie ni les classes CSS. Les classes serviront pour les CSS mais également pour l’effet accordéons que nous verrons dans l’étape 3 . Le div contenu servira pour l’étape 4.

Etape 2 : Rendons le menu un peu moins moche :)

On ajoute un petit peu de CSS :

 /* rendons notre barre de nav un peu plus belle*/
/* rendons notre barre de nav un peu plus belle*/
#barre_navigation {
width : 200px;
padding: 0 ;
margin : 0;
float : left ;
}

#barre_navigation h4{
padding: 4px 10px ;
font-size: 12px;
font-weight: normal;
text-transform: uppercase;
color: #FFF;
background: #3399ff;
cursor: pointer;
margin : 0 0 1px 0 ;
}

#barre_navigation a{
text-decoration : none;
}

#barre_navigation ul{
padding: 4px 2px 4px 10px;;
font-size: 11px;
color: #FFF;

}

#barre_navigation ul li{
list-style-type : none;
padding : 2px 0 2px 0;
margin : 0;
}

#barre_navigation ul li a {
text-decoration: none;
color: #FFF;
}

#barre_navigation ul li a:hover {
text-decoration: none;
color: #FFF;
background-color: #FF3366;
}

On obtient ce résultat pour l’étape 2.

Etape 3 : On ajoute du Javascript, ca bouge !

On rentre enfin dans le vif du sujet . Donc là nous allons ajouter le code Javascript nécessaire pour la mise en place de l’effet accordeon pour notre menu. J’ai placé ce code à la fin du fichier.

//pour commencer avec les elements fermés au départs
var stretchers = $$('div.accordeon');
stretchers.each(function(item){
item.setStyles({'height': '0', 'overflow': 'hidden'});
});

//au chargement de la page
window.onload = function(){

var togglers = $$('h4.toggler'); //on met dans la variable togglers tous les div H4 de la page appartenant a la classe toggler. C'est la syntaxe $$ de element de Mootools qui permet cela très facilement

var bgFx = []; //variable pour la gestion des couleurs de fond

togglers.each(function(toggler, i){
toggler.defaultColor = toggler.getStyle('background-color');

//fx creation
bgFx[i] = new Fx.Color(toggler, 'background-color', {wait: false});
});

// creation de l'effet accordeon
//syntaxe : new Fx.Accordion(quel_div_visible, quel_div_a_afficher, {options eventuelles});
var myAccordion = new Fx.Accordion(togglers, stretchers, { opacity: false, start: false, transition: Fx.Transitions.quadOut,

onActive: function(toggler, i){
bgFx[i].toColor('#FF3366'); //quand un element est actif
toggler.getFirst().setStyle('color', '#fff');
},

onBackground: function(toggler, i){
bgFx[i].clearTimer(); //quand un element n'est actif
toggler.setStyle('background-color', toggler.defaultColor);
toggler.getFirst().setStyle('color', '#222');
}
});

//permet de reouvrir directement le bon element
//grace à l'url test.html#cat_a_ouvrir
function checkHash(){
var found = false;
$$('h4.toggler a').each(function(link, i){
if (window.location.hash.test(link.hash)){
myAccordion.showThisHideOpen(i);
found = true;
}
});
return found;
}

if (!checkHash()) myAccordion.showThisHideOpen(0);

};

On obtient le résultat de l’étape 3.

info J’ai commenté brievement le code afin que tu puisses bien tout comprendre mais sans le surcharger. Je détaillerais certains points au fur et à mesure des étapes. Examinons certaines lignes importantes :

var stretchers = $$('div.accordeon');
var togglers = $$('h4.toggler');

Cette syntaxe vraiment puissante permet grâce à la classe Element de Mootools de pouvoir accéder à n’importe quel élément(div,a,b,h1,span…) de la page, peu importe le navigateur utilisé.

Il existe de nombreux moyens d’accéder à un élement comme par exemple :

$S('a') //renvoie un tableau de tous les élements < a > de la page
$S('a', 'b') //renvoie un tableau de tous les élements < a > et < strong >
$S('#monElement') //tableau de tous les éléments avec un id='monElement'
$S('#monElement a.maClasse') //tableau avec tous les éléments < a class="maClasse" > contenus dans l'element avec un id='monElement'
$E('a', 'monElement') //renvoie le Premier élement < a > de l'élement avec un id='monElement'

Cette liste est loin d’être exhaustive mais elle vous permet de voir la puissance de Mootools pour la sélection des éléments. N’hésitez pas à regarder la documentation de Mootools très bien faite.(en anglais)

Etape 4 : Ajoutons un peu d’ajax

Maintenant que notre menu est fonctionnel , il est temps de faire apparaitre nos images. Un repertoire /images contiendra nos images en version miniature et le repertoire /images_big celle en taille normale. Ces deux dossier étant dans le même répertoire que notre fichier tutoriel_mootools.html .

Tout d’abord nous allons créer notre fichier PHP (recuperer_photo.php) qui va récuperer les images que nous souhaitons :

//petit script PHP qui permet de récuper l'image selon le parametre prenom entré
$repertoire = opendir("./images");
//on parcourt le dossier images
while ($entree = readdir($repertoire)) {
if ($entree != "." &amp;&amp; $entree != ".." &amp;&amp; strstr($entree,$_POST['prenom'])) //si le nom du fichier contient le prenom
$tFichiers[] = filemtime("./images/".$entree)."+".$entree;
}
//on ferme le repertoire
closedir($repertoire);
//on les range pr le fun :)
rsort($tFichiers);

//on les affiche
for ($cpt = 0; $cpt < sizeof($tFichiers); $cpt++) {
$tVals = explode("+", $tFichiers[$cpt]);
echo "<a title="Image : " rel="lightbox" href="http://fardeen.biz/wp-admin/images_big/"><img src="http://fardeen.biz/wp-admin/images/$tVals%5B1%5D" alt="" /></a>";
}

Ceci étant fait, nous allons ajouter encore un peu de code javascript pour afficher les images lorsqu’on cliquera sur un des éléments du menu.

//fonction qui va afficher les photo
function afficher(prenom) {
//syntaxe : ajax(quel_fichier, {options})
//postBody est le parametre envoyé au fichier PHP
new ajax('recuperer_photo.php',{postBody:'prenom='+prenom, onComplete: photoFinished, update: 'contenu',method: 'post'}).request();
}
//fonction appelée à la fin de la requete ajax de la fonction afficher()
function photoFinished(request){
alert('chargement photo fini :)');
}

Nous obtenons ce résultat pour l’étape 4.

On peut voir que la fonction Ajax est très facile à utiliser.

Etape 5 : Affichage des photos un peu plus esthétique

On ajoute un peu de CSS :

#contenu {
background-color: black;
}

#contenu img{
padding : 1px ;
border : 1px solid #FF3366;
margin: 0px 10px 0px 10px;
}

Et on remplace la fonction alert par un petit effet de clignotement :

//on definit un effet de couleur pour la couleur de fond du div contenu
var effetCouleur = new Fx.Color('contenu', 'background-color');

et on remplace la fonction photoFinished() :

function photoFinished(request){
//on lance un effet de changement couleur lorsque chargement est terminé
//il est important de bien affecté une valeur de départ au div contenu
effetCouleur.fromColor('#ff3366');
//alert('chargement photo fini :)');
}

On obtient ce résultat pour l’étape 5. On a bientôt fini , courage :)

Etape 6 : Des ptites infobulles pour le plaisir

Pour ajouter des infobulles , il nous suffit d’ajouter ce code à la fonction photoFinished() . Ce code n’est pas placé dans la fonction par hasard, lorsque toutes les liens des images sont chargés on applique ensuite les infobulles.

//pour les infobulles
//syntaxe new Tips(quelElement,{options})
//on place ici la fonction pour l'appliquer quand toutes les images sont chargées
var myTips = new Tips($ES('a','contenu'), {
maxTitleChars: 50, //des titres avec une longueur max de 50
maxOpacity: .85, //un peu de transparence
className: 'infobulle' //quel classe CSS pour notre petite infobulle
});

On ajoute la CSS correspondante pour notre infobulle :

.infobulle{
background-color: #FF3366;
padding : 6px;
border : 1px solid #000;
font: lighter 10px/1.3 Verdana,Arial,sans-serif;
text-decoration: none;
text-align: center;
}

Et voila le résultat pour cette étape 6.

La fonction pour l’affichage des infobulles est aussi extremement facile à mettre en place.

Etape 7 : La touche finale : Slimbox

Quand on clique sur une des images, on quitte la gallerie. C’est ergonomiquement intolérable !

Pour remédier à cela nous allons ajouter Slimbox très facilement. Tout d’abord il suffit de télécharger ce script basé sur Mootools sur le site de son auteur ou directement ici. (script de 7 Ko, très léger) Puis on va le décompresser à la racine de notre dossier de travail.

On inclus les fichiers nécessaires :


<script src="js/slimbox.js" type="text/javascript"></script>

On ajoute le code Javascript pour l’affichage avec Slimbox :

//affiche une image avec l'effet lightbox de slimbox
function montrer_image(image,titre) {
Lightbox.show(image, titre);
}

Et enfin on va changer légerement notre fichier PHP pour qu’un clic sur une image appelle notre fonction Javascript montrer_image();

echo "<a title="Image : " rel="lightbox[photo]" href="javascript:montrer_image('images_big/'.$tVals[1].','.$tVals[1].';"><img src="/images/$tVals[1]" alt="" /></a>";

Nous obtenons enfin notre résultat final .

 

Conclusion

Comme vous avez pu le constatez grâce à Mootools il est assez facile d’obtenir des applications riches sans trop d’efforts.

L’objectif n’étant pas la réalisation de la galerie (il en existe déjà tellement) mais plutôt l’apprentissage de Mootools, il reste evidemment de nombreuses améliorations possibles à apporter à cette galerie comme des effets graphiques avancés, une gestion de drag and drop et même eventuellement une gestion des cookies pour sauvegarder un caddie d’image par exemple. Je viendrais peut-être ajouter ces améliorations à ce tutoriel si il est apprécié et peut-être qu’ensemble, on fera LA galerie du web 4.0 :D

Edit : la suite est disponible !

D’ailleurs si vous avez apprécié ou pas ce tutoriel, je vous remercierai de m’en faire part par le biais des commentaires. Ca me motivera en refaire d’autre parcque bordel c’était long . Vous pouvez telecharger toutes les sources de ce tutoriel . (l’archive contient egalement les fichiers de la suite de ce tuto)

PS : Si j’ai fais des erreurs , des oublis , n’hésitez pas également à commenter pour améliorer ce tutorial.

Bises à tous :)

Un nouveau tutoriel d’une application Google Map réalisée avec PHP et Mootools existe maintenant , il reprend en partie ce tutoriel mais dans le cadre d’une application avec Google Map.
Il existe maintenant la suite de ce tutoriel qui aborde le drag and drop et la gestion d’un caddie grâce au cookie.

Il faut décompresser après :)

142 réponses à “Tutoriel Mootools, framework Javascript gratuit”

Tutoriel Galerie Ajax avec Mootools, framework Javascript gratuit…

Tutoriel en 7 tapes pour dcouvrir la puissance de Mootools .Apprentissage par la pratique : ralisation d’une galerie avec menu effet accordon, effets graphiques, requte AJAX, effet lightbox … C’est du bon ;)…

Anonymous le 11 November 2006 16:20 |

Tu es trop fort, une sorte d’alien de l’ajax, des tuts comme celui-ci on en redemande… allez hop, au boulot !

infofiltrage le 11 November 2006 21:42 |

lol merci pour le compliment ;)

Fardeen le 11 November 2006 23:19 |

Bonjour,

Le tutorial est sympa mais il sera utile de spécifier que le bon javascript est le javascript non obtrusif: rendre le contenu accessible aux navigateurs dans lesquels javascript est désactivé doit être une priorité. Ici je veux principalement parler des “liens ajax” qui devraient pointer vers des pages contenant les miniatures des photos, liens dont le comportement par défaut serait modifié par javascript afin de charger les miniatures via ajax.

Christophe Beyls le 13 November 2006 00:49 |

Tu as raison Christophe mais comme je le précisais , ce tuto n’a pour vocation que de présenter les fonctionnalités de Mootools.

La galerie en elle même n’est la que pour illustrer , elle n’est pas destinée a être mis en application en condition réelle . Elle pourrait l’être mais après avoir ajouté de nombreuses modifications, dont notamment celle que tu mentionnes.

Merci pour ton commentaire en tout cas , ca fait plaisir :)

Fardeen le 13 November 2006 10:57 |

Tu aurais pu mettre des photos de Myriam dans ton exemple de galerie.
Bravo fardeen pour l’article. Viens signer ton contrat, je t’embauches !! Lol

frnx le 16 November 2006 08:54 |

Merci mec :D T’a pas les moyens de m’embaucher par contre, j’suis trop cher :p

Fardeen le 16 November 2006 11:19 |

merci !! très utile . J’ai mis ton lien sur le site de Modxcms que j’utilise
http://modxcms.com/forums/index.php?action=post;board=56.0

lasiate le 18 November 2006 01:28 |

Merci bcp pr le lien :)

Fardeen le 18 November 2006 10:23 |

bonjour ,
merci pour ce tuto tres sympa ,
j ai un petit soucis pour afficher les photos . dans quel repertoire faut il les mettre .
j ai mis a la racine , mais pas d affichage .
merci

amocco le 19 November 2006 10:07 |

“Un repertoire /images contiendra nos images en version miniature et le repertoire /images_big celle en taille normale. Ces deux dossier étant dans le même répertoire que notre fichier tutoriel_mootools.html .”

Je ne pense pas pouvoir être plus explicite :)

Fardeen le 19 November 2006 12:03 |

Merci pour ce super tuto. Je voudrais savoir comment pourrais-t-on ajouter un lien externe(vers un site) à chaque photos dynamiquement (petite base de données peut-être).

Merci d’avance

Octave Z le 19 November 2006 16:23 |

merci pour le tuto!

le choix des photos pour la gallerie est excelent :D

jer666 le 19 November 2006 16:32 |

Oui en effet le mieux ce serait avec une base de données qui contiendrait la liste des catégorie , et toutes les images. Chaque image appartenant à une catégorie.

On a donc 2 tables (MySQL) : CATEGORIE et IMAGE.

dans IMAGE on aurait id_image,libelle_image,lien_image,description_image par exemple.

Je ne sais pas si je répond à ta question mais je n’ai pas abordé volontairement le coté base de donnée et administration dans ce tuto pour ne pas le surcharger.

Je le ferais dans un prochain tuto prochainement. Pourquoi pas lié avec cette galerie pour rester dans la continuité :)

Fardeen le 19 November 2006 16:36 |

Merci pour ta réponse je pense que je vais faire comme ça, je vous tiens au courant des avancements.

Octave Z le 19 November 2006 17:10 |

tres bon tuto par contre la 3eme photo de Jennifer Love Hewith est un fake !

GaKaTaN le 19 November 2006 17:17 |

Merci et nan ce n’est pas un fake . Faut pas croire c’est une coquine la Jennifer :D

Fardeen le 19 November 2006 19:17 |

Je viens de remarquer un petit problème avec l’utilisation du javascript dans le lien vers l’image en effet on perd la classification par catégorie que l’on à mis dans la balise rel=lightbox[categorie] je ne sais pas à quoi c’est dû mais c’est un peu embêtant…

Octave Z le 21 November 2006 15:01 |

Bonne remarque , mais en fait le rel=lightbox permet de se passer de l’appelle a la fonction montrer_image normalement. Dans l’exemple que j’ai mis , j’ai du oublier de l’enlever car il ne sert a rien . Seul l’appel a la fonction montrer_image sert.

Le problème est que la slimbox est faite pour fonctionner avec des images déjà sur la page. Pour notre besoin spécifique , c’est à dire des images chargées apres le chargement initial de la page, j’ai donc utilisé la fonction montrer_image pour contourner ce problème. L’interêt normalement de rel=lightbox[cat] et de pouvoir afficher des suites d’images (avec bouton next, prec). On perd cet avantage avec la fonction montrer_image() mais bon comme je le précisais l’objectif de ce tuto n’était pas d’obtenir une galerie finalisée, mais vraiment de comprendre le fonctionnement de Mootools et sa mise en application.

Pour ton problème, ouvre le fichier slimbox et regarde comment il fonctionne dans le détail et adapte le a tes besoin.

Fardeen le 21 November 2006 15:21 |

Je vous remerci grace a vous j’ai pu amelioré ma galerie

http://www.pagaille-wallpaper.info/

Merci

AdJaXiO le 21 November 2006 23:20 |

Bonjour à tous et encore merci pour ce tuto Fardeen.
De même, je souhaite une bonne année et mes meilleurs voeux à tous les lecteurs de ce blog.

Ma question concerne le script PHP de notre page. Je n’arrive pas à afficher mes images et pourtant elles bien existantes. Peut-il y avoir un soucis à cause du fait que ce soit des GIF ? Quels noms doit-on donner à ces images ?

Merci de votre aide et n’hésitez pas à me répondre sur ma boite perso.

A bientôt.

Tom’son

Tommasson le 9 January 2007 21:51 |

Trop bien, merci

bwana le 16 January 2007 10:59 |

@Tommasson :

Il faudrait préciser l’erreur que tu obtient . Le chemin est il correct ?

Fardeen le 18 January 2007 16:07 |

ça fait plaisir de voir des tuto aussi sympatiques… je reconnai bien la quelq’un qui a fait ingemedia.
Au fait au niveaux droit d’utilisation de mootools j’imagine que se n’est pas gratuit ?

Pauvre Fou le 19 January 2007 00:57 |

C’est plutot l’IUP PSM qui t’apprend ca, pas ingémédia. Parcque pour la technique, ingémédia c’est pas ca ;)

Et bien entendu Mootools c’est gratuit, peu importe l’utilisation.

Fardeen le 19 January 2007 01:45 |

Bonjour , je viens découvrir mootools et j’ai une question sur les infobulls…
En fait j’aimerai afficher une infobull pour tous les liens de mon site
je reprend ainsi votre code :
var myTips = new Tips($ES(’a',’contenu’), {
maxTitleChars: 50, //des titres avec une longueur max de 50
maxOpacity: .85, //un peu de transparence
className: ‘infobulle’ //quel classe CSS pour notre petite infobulle
});
Doit je creer une fonction specifique genre afficherbull(){
//votre code ici}
????

gtraxx le 23 January 2007 13:12 |

Salut ami noob ;)

La class Tips permet deja d’afficher les infobulles :

[js]
var myTips = new Tips($ES(’a',’contenu’) //SUR QUELS ELEMENTS APPLIQUE T-ON ?, {
//ICI LES OPTIONS DE l INFOBULLE
maxTitleChars: 50, //des titres avec une longueur max de 50
maxOpacity: .85, //un peu de transparence
className: ‘infobulle’ //quel classe CSS pour notre petite infobulle
});
[/js]

Toi tu veux afficher les infobulles pour tous les liens, il te suffit donc de remplacer
$ES(’a',’contenu’) par $(’a') . Je t’invite a relire le tuto (encadre de l etape 3) pour savoir comment cibler des elements.

Voila j espere que avoir ete clair, si tu as besoin de precision, hesite pas :)

Fardeen le 23 January 2007 19:30 |

Salut je vient de me rendre compte qu’un clic sur une partie de ton accordéon n’ajoute pas la catégorie dans la barre d’adresse .Par contre sur le lien ceci fonctionne.

Pauvre Fou le 24 January 2007 09:20 |

oui j’ai fais exactement cela mais j’en perd mon latin lol
var myTips = new Tips ($(’a') //SUR QUELS ELEMENTS APPLIQUE T-ON ?,
{
//ICI LES OPTIONS DE l INFOBULLE
maxTitleChars: 50, //des titres avec une longueur max de 50
maxOpacity: .85, //un peu de transparence
className: ‘infobulle’ //quel classe CSS pour notre petite infobulle
});
et pour définir un lien j’ai fais comme ceci:
[html]
lien de teste
[/html]
j’ai sûrement oublier un truc tout simple

gtraxx le 25 January 2007 16:28 |

Ta fonction de tips , tu la lances bien dans le window.onLoad ?

Ta version de Mootools comprend bien la classe Tips ?

Fardeen le 25 January 2007 19:01 |

oui la class tips est bien la
window.onLoad = function(){
var myTips = new Tips ($(’a') //SUR QUELS ELEMENTS APPLIQUE T-ON ?,
{
//ICI LES OPTIONS DE l INFOBULLE
maxTitleChars: 50, //des titres avec une longueur max de 50
maxOpacity: .85, //un peu de transparence
className: ‘infobulle’ //quel classe CSS pour notre petite infobulle
});}
par contre firefox m’indique une erreur javascript au niveau de ce code :
missing ) after argument list

gtraxx le 26 January 2007 12:47 |

Salut ,

faut pas les laisser les //COMMENTAIRES , c’etait juste pr t’expliquer !

window.onLoad = function(){
var myTips = new Tips ($(’a') //CA TU L’ENLEVE,
{
//CA AUSSI
maxTitleChars: 50, //des titres avec une longueur max de 50
maxOpacity: .85, //un peu de transparence
className: ‘infobulle’ //quel classe CSS pour notre petite infobulle
});}

Fardeen le 26 January 2007 15:04 |

Génialissime Bravo !!! C’est vraiment super !!!

M!-k0n le 26 January 2007 17:27 |

j’ai tester mais cela ne fonctionne toujours pas mais j’ai oublier de preciser que j’utilise dèja un window.load pour une autre application donc peut etre que je devrais preciser un nom de fonction ou quelque chose du genre …..
Voici a quoi elle ressemble a l’heure actuelle.

window.onload = function(){
var myTips = new Tips ($(’a'){maxTitleChars: 50,maxOpacity: .85,className: ‘infobulle’});
}

gtraxx le 27 January 2007 22:42 |

Merci pour ce tutoriel très intéressant. Et utile !!

samti le 28 January 2007 13:21 |

[...] pourrez ainsi administrer votre gallerie AJAX ou encore votre application Google Map que l’on a abordé dans les derniers [...]

Tutoriel administration MySQL PHP rapide et facile < Fardeen GHULAM le 29 January 2007 04:21 |

tuto tres clair. merci bien

daweed le 31 January 2007 11:10 |

[...] tutoriel est à faire à la suite de ce tutoriel sur Mootools que j’ai fait il y a peu de temps. Je vous conseille vivement de visiter d’abord le tutoriel [...]

Tutoriel Mootools, la suite (Drag’n Drop et Cookie) < Fardeen GHULAM le 31 January 2007 17:51 |

[...] Pour ceux qui debarquent et ne connaissent pas encore Mootools, je vous conseille la lecture de ces billets, en particulier celui-ci. [...]

Sortie de Mootools 1.0 ! Quoi de neuf ? < Fardeen GHULAM le 31 January 2007 20:12 |

Salut, merci beaucoup pour ces tuto extrêmement bien réalisés qui mon permis de m’aider a développer ce site pour ma mère artiste peintre. http://www.desaintflorent.com

Pauvre Fou le 1 February 2007 18:04 |

[...] Tutoriel Mootools, framework Javascript gratuit < Fardeen GHULAM (tags: javascript webdesign mootools ajax tools) [...]

Info Du Web » links for 2007-02-01 le 3 February 2007 05:23 |

Bjr
Voilà mon pb: je n’arrive pas du tout à utiliser et à faire ton tutoriel sur mootools (la galeries avec les bonasses !!)
Je procède pourtant (je pense) comme indiqué: j’ai téléchargé mootools sur le site de l’éditeur, en sélectionnant toutes les options. J’ai stocké cela ds un directory.
Ensuite, j’ai copié-collé, les parties de codes que tu donnes, une à une jusqu’a l’étape 6 inclus.
J’utilise Dreamweaver. J’ai coller dans le Head et le Body, mais sans succès.
Je ne sais pas ce qui bug..
Je n’ai pas de message d’erreur, mais cela ne s’affiche pas comme il faut.
J’ai pu merder où?
Merci

Bertrand le 8 February 2007 07:48 |

” je n’arrive pas du tout à utiliser et à faire ton tutoriel sur mootools ” est une erreur pas assez precise pour que je puisse t’aider ;)

Pour commencer installe Firebug (http://extensions.geckozone.org/FireBug) sur ton Firefox pour pouvoir debugger les messages d’erreurs eventuels.

Ensuite ca ne marche pas, ok, mais soit plus precis ou bien ton exemple en ligne pour que je puisse aller regarder.

En tout cas http://www.chezmoicamarche.org/ :D

Fardeen le 8 February 2007 15:01 |

En fait je ne comprends déja pas ce que l’on doit faire avec le fichier mootools que l’on télécharge…cela vient peut etre de là.

bertrand le 8 February 2007 17:50 |

Si tu n’a aucune notion de programmation, faudrait plutot commencer par la base de Javascript et HTML. Mootools vient ensuite ;)

Bon courage en tout cas :)

Fardeen le 8 February 2007 21:57 |

Salut,

Ne demotive pas notre cher bertrand, il suffit d’un peu de patience de temps et tout finira pas etre plus claire :)

liaboss le 9 February 2007 13:29 |

J’y arrive pas….
voici mon msn si vous voulez m’aidez
bertrand_renaud@hotmail.com

bertrand le 9 February 2007 18:35 |

Encore moi…

Je n’y arrive pas. j’ai des notions de prog, j’ai deja fait un site web (http://brenaud-photos.ovh.org) mais je ne comprends pas tout le cheminement de ton tuto. C’est tout :-)

Bertrand le 15 February 2007 08:23 |

Vraiment hot comme tutoriel. Ca l’air assez puissant Mootools, mais est-ce que ca fonctionne avec des pages autres que php ? (exemple JSP et java ).

Est-ce qu’il y a un addon pour une connexion à uene base de données ?

J’ai rien trouvé qui génère des galleries avec slimbox et va chercher les images dans la DB.

si quelqu’un peut me donner plus d’info voici mon courriel

survivant00@gmail.com

Sébastien le 17 February 2007 21:36 |

Salut,

Mootools c’est une surcouche Javascript. Ca n’est que du Javascript et donc c’est compatible avec tous.

Javascript ne se connecte pas aux bases donnees, ce n’est pas sa vocation puisque c’est un langage execute cote client, donc nan il n’y a pas d’addon et il n y en aura jamais.

Pour ta gallerie, utilise PHP.

Bonne chance ;)

Fardeen le 17 February 2007 21:41 |

C’est du bon travail que voila…

juste 2 petites remarques sur la forme et non sur le fond :

1/ pourquoi ne pas justement utiliser l’accordéon pour présenter les grandes étapes de ce tuto ( héhé pas con le gars hein hein)

2/ Grossir un peu les titres ou faire en sorte qu’ils se détachent du reste du contenu…

3/ Un sommaire avec des ancres :D (oui j’avais dit que 2 mais bon… si tu fais l’accordéon y’a plus besoin)

bref,
sinon le reste c’est nickel ;)

graffiti le 22 February 2007 15:57 |

Yep

1/ Parcque j’aime pas ca pour le contenu, je trouve pas ca pratique l’accordeon. Suffit de regarder le Mootorials fait avec pour voir que c’est pas pratique.

2/ Tu as raison, j vai le faire

3/ Ca arrive aussi . C’est le prochain tuto ;) Si y avait pas IE pour me faire perdre autant de temps , il serait deja en ligne depuis 1 semaine.

Merci pr le reste :)

Fardeen le 27 February 2007 15:42 |

Excellent tuto

fred le 2 March 2007 14:36 |

personelement au moment de l’intégration de java, j’ai une superbe erreur :

Fx.Color is not a constructor
[Break on this error] bgFx[i] = new Fx.Color(toggler, ‘background-color’, {wait: false});

et lorsque je regarde dans le fichier js je ne trouve pas cette méthode … ou puis-je la trouver ? (pourtant j’ai bien coché toutes les petites cases pour les téléchargements …)

Michael le 2 March 2007 23:47 |

Ce tutoriel n’est valide qu’avec Mootools version 0.83 .

Certaines fonctions ont changes dans la version 1.0 (celle que tu as du telecharger)

Sois tu corrige pour faire marcher avec la 1.0 (je t’invite a regarder les nouveaux tutos , cela t’aidera peut etre), ou bien tu telecharge plutot la version de ce tutoriel. (regarde la source et prend le mootools.release.83.js).

Good luck :)

Fardeen le 3 March 2007 00:06 |

je te remerci pour ta réponse.

Je pense que je vais dans un premier temps reprendre ta version pour mieux comprendre le tout et par la suite l’adapter

Encore merci pour ce tuto

Michael le 3 March 2007 22:13 |

Iop et GG à toi, nice le tuto.
Question à part tu utilises quoi pour la coloration syntaxique de code ?

JrM le 7 March 2007 19:35 |

Merci :)

J’utilise http://blog.igeek.info/wp-plugins/igsyntax-hiliter/ pour la coloration syntaxique.

Fardeen le 7 March 2007 19:48 |

[...] tu debutes dans Mootools, va plutot la avant sinon tu vas rien [...]

Tutoriel Mootools 1.0 : Slider pour changer largeur interface < Fardeen GHULAM le 9 March 2007 18:31 |

[...] vous n’avez jamais abordé Mootools, je vous conseille de regarder ce tutoriel pour comprendre comment [...]

Tutoriel icones liens externes avec Mootools < Fardeen GHULAM le 9 March 2007 20:09 |

Vraiment très très bon tuto, très clair et relativement bien commenté. Des tutos comme ça, ça devrait être remboursé par la sécu!

Je trouve que les choix effectués dans l’orientation de cette galerie ouvrent diverses possiblités et ne cantonnent pas à des utilisations restrictives. Tout simplement génial.

Bravo et Merci, on en redemande encore et encore.

fanfarlo le 17 March 2007 10:51 |

Bonjour,

Vraiment bien, le tuto, mais le lien dans le fichier php incompréhensible

echo ““;

Possible de l’avoir en plus simple SVP Merci

Mac le 28 March 2007 14:39 |

Merci mac, c’est bon j’ai corrige mais Wordpress me rajoute du code que j veux pas.

Pour compenser j’ai ajouter un lien en fin de tuto qui permet de telecharger toutes les sources en une archive zip ;)

Fardeen le 28 March 2007 15:08 |

Merci super sympa, et Super réactivité 100%

Mac le 28 March 2007 15:20 |

[...] Et si vous avez besoin d’un tutoriel pour vous initiez et vous familiarisez à l’Ajax, allez faire un tout ici  ou la. [...]

WowoDesign » Blog Archive » Mootools 1.0 - Framework JavaScript puissant ! le 29 March 2007 23:50 |

Bonjour,

Très bon tutoriel mais j’aurais une question : J’ai réalisé un site en utilisant cette méthode de menu accordéon sur toute la largeur du conteneur, ce qui veux dire ke les sous menu de votre exemple sont dans mon cas les pages du site.

Je souhaite placer le menu en bas de page et je voudrais que le menu s’ouvre vers le haut, est ce possible et si oui comment dois-je m’y prendre ?

Merci à ceux qui me répondront.

Torgull le 18 April 2007 14:22 |

Salut,

tu ne peux pas pousser tes divs vers le haut. Tu les pousserais ou les elements situes au dessus ?

Si tu as un exemple de ce que tu veux faire en ligne , balance le lien pour que je puisse mieux comprendre ton besoin :)

Fardeen le 18 April 2007 14:42 |

Tres bon tutoriel sur mootools … J’adore le ton de tes phrase, ca donne envie de lire jusqu’au bout, meme si le contenu nous depasse … ;-)

Pour le prob qu’on à parler sur ton PLUGOO, c’est bon je m’en sort on va dire … mais vache, j’en chis .
Pour les curieux mon prob est que j’utilise joomla 1.5 avec incorpore dans le framework joomla, mootools ! nikel vous me direz, ben non car avec toutes les secu que le framework joomla impose je me retouve lors de l’utilisation de la fct ajax, dans un conflit de declaration pas croyable …
Bref pas de souci avec mootol, mais plutot a faire focntionne deux framework imbriqué …
A pluche

malok le 19 April 2007 23:20 |

Je n’utilise pas joomla (trop une usine a gaz) mais normalement le code de joomla et celui de Mootools ne devrait pas entrer en conflit .

Il faut bien comprendre que Mootools c’est juste une surcouche javascript. Et Joomla un framework PHP. Ca n’a rien a voir.

Fardeen le 20 April 2007 15:04 |

super le tuto!
merci

titi le 21 April 2007 10:22 |

Le prob vient du fait que chaque page de mons cript contient une declaration du framework joomla en entete, et lorsque je lance ma function() ajax et envoi les donnes a la page php et la j’echo les donnes dans ma page html “probleme le framework est declare deux fois de suite, et si j’utilise du php sur un fichier externe au framework joomla, ben je perd toutes les variables necessaire (database……) au fct de mon composant …

malok le 21 April 2007 13:30 |

Salut a tous !!

Bon je vai faire la novice de base…désolée à l’avance lol
Voila bon et bien moi aussi je voulais faire des choses colorées et tout et tout donc j’ai lu ton super tuto (enfin j’aurais aimé des mecs quand meme…).
Eh bien j’ai essayé de faire le mien. Je vai sur mootools je download la librairie complète v1.1 et je m’y mets.
Je copie colle alors tous les codes de la démo FX.elements pour me l’adapter mais la plus rien !!! Y’a plus rien qui bouge alors que j’ai fais le link ds le head !

Pleaz help

Thx, ;-()

Julie le 27 May 2007 22:27 |

Et tu veux que je t’aide comment ? Sans url je peux rien faire. Je suis pas magicien ;)

Mais verifie que le code JS que tu as copié collé est bien appelé apres que le HTML soit chargé :

[js]
window.addEvent(’domready’, function(){
//ici tu copie colle ton code
});
[/js]

PS : Si c’est ca corrige ton pb, je suis Criss Angel :D

Fardeen le 28 May 2007 00:22 |

Bravo pour la qualité de ton tutoriel, je doit avouer que si je n’avais pas trouvé ton site, j’aurais directement zapper Mootools….. imagine le gachis ;-)

froggy le 1 June 2007 03:05 |

Salut à toi!!!

Je viens de découvir ton tuto et je dois dire qu’il est formidable!!!

j’ai donc décidé de l’intégrer à un site que je suis en train de développer mais j’ai quand même un pti souci:

Je souhaiterai que au chargement initial de la page ce soit le premier menu qui soit ouvert(et nom le dernier) et que ensuite en fonction de la page ou l’on se trouve, ce soit la bonne catégorie qui soit ouverte.(j’espère que tu comprends ce que je veux dire par là^^)

Jte met donc un lien pour te montrer le souci:
http://www.darksshadow.fr/test/

Merci beaucoup d’avance pour ton aide et un grand bravo pour ce magnifique tuto!!!

Dark$hadow le 1 June 2007 11:50 |

Salut :)

Si tu regardes l exemple de l accordeon sur le Mootorials :
http://clientside.cnet.com/wiki/mootorial/08-plugins

Tu verras il y a deux fonctions show et display qui permettent d’ouvrir un element en particulier.

Le code deja present dans ce tuto

[js]

//permet de reouvrir directement le bon element
//grace à l’url test.html#cat_a_ouvrir

function checkHash(){
var found = false;

$$(’h4.toggler a’).each(function(link, i){
if (window.location.hash.test(link.hash)){
myAccordion.showThisHideOpen(i);
found = true;
}
});
return found;
}

if (!checkHash()) myAccordion.showThisHideOpen(0); //a remplacer par display() a cause de Mootools 1.1
[/js]

Ce code est probablement a adapter puisqu’il y a eu des changement de syntaxe depuis Mootools 0.83.

Bon courage :)

Fardeen le 1 June 2007 14:29 |

euh…..

Je te remercie pour ton aide mais je suis pô très très fort en js (pour tout dire je suis même débutant^^) donc si tu pouvais être plus contrait (n’y vois pas d’offense) du genre je change quoi pour que je puisse choisir le menu ouvert lorsque clic sur tel ou tel onglet…

Merci encore un fois et bonne continuation pour tes tutos (encore à venir j’espère!!!)

Dark$hadow le 4 June 2007 07:29 |

[...] Je fais une petite cure de framework javascript en ce moment. Pour l’instant, j’ai testé celui d’Adobe connu son le nom de spry et inclu dans dreamweaver cs 3 et je suis un peu déçu… Finalement, Mootools a l’air plus facile ^^ http://mootools.net/ Un tutorial en français : http://fardeen.biz/index.php/tutoriel-mootools-framework-javascript-gratuit/ [...]

jaiunblog.com | j’ai un blog : Blog Archive : mootools le 13 June 2007 11:15 |

Bonjour, et tout d’abord merci pour ce tuto, vraiment bien fait.
Je l’ai suivi pas pas mais le résultat n’est pas identique. en fait j’ai des erreurs javascript. J’ai telechragé la dernière version de mootools. Je sais tu signales bien que ce tutoriel est pour mootools antérieur à la version 1.0. Mais bon j’ai quand même essayé :)
Mon probleme se situe sur la ligne suivante :
bgFx[i] = new Fx.Color(toggler, ‘background-color’, {wait: false});
Fx.Color n’existe pas dans le fichier mootools !! J’ai récupéré une ancienne version de Fxpack.js qui contient cette déifnition mais il ne passe rien dans la changement de couleut du menu sélectionné.
De plus l’infobulle affiche seulement le texte et non la mise en page css comme dans l’exemple!!
Une autre question, lors du clique sur une photo est-ce normal que l’on ne retrouve pas les lies “prev” et “next” afin de faire défiler les images ?

Je vous remercie de votre aide

Coachdev le 16 June 2007 07:52 |

Salut Coachdev :)

pour ton Fx.Color regarde cette page : http://demos.mootools.net/Fx.Styles .

Pour ton pb d’infobulle je peux pas t’aider davantage avec le peu d’info que tu donnes. Tu peux verifier la http://demos.mootools.net/Tips

Pour le next et prev, oui c’est normal qu’il n’apparaissent pas, j’ai pas pris la peine de le faire :)

Bon courage :)

Fardeen le 16 June 2007 17:54 |

Bonjour et merci pour ce Tutoriel relativement bien foutu,
mais tu semble faire l’impasse sur un délire qui ne gêne apparemment personne d’autre que moi ( c’est ptet aussi que jdébute vraiment en PHP )

ça :
“;

c’est une histoire de concaténation + guillemets, doubles/simples côtes
mais c’est simple ça m’a carrément paumé tous ces %5 etc…
il doit s’agir d’une combine, mais voudrais-tu s’il te plait m’indiquer où je pourrais éspérer comprendre cela, c’est dommage j’ai fait tout le reste en 1 heure et là jme tape des parse errors que j’arrive pas à éradiquer, il doit y avoir une méthode mais jtrouve pas d’info…
Merci d’avance

sazaam le 22 June 2007 12:38 |

Tu as raison je suis désolé, ce code est bien entendu erroné, mais c’est Wordpress qui rajoute ce code degeu tout seul. J’essaierai de corriger ca.

C’est pourquoi je t’invite a telecharger le .zip contenant toutes les sources. Comme ca plus de pb de parsing :)

Fardeen le 22 June 2007 14:31 |

salut bon boulot tutode qualite comme par defaut je suis ton ami par defaut tu vas m’aider lol a une prochaine visite

petitdevddebut le 5 July 2007 09:37 |

Bonjour

Super tuto, et merci

J’ai un p’ti problème, avec ajax, je voudrai passer deux paramètre au fichier php, mais je n ‘y arrive pas. Votre tuto ne montre q’un seul paramètre.

Donc quelle est la syntaxe pour plusieurs paramètres

Merci et continuer ainsi.

giggs le 11 July 2007 14:11 |

Salut,

tu peux mettre autant de parametre que tu veux , c’est juste une url que tu envoies.

Avec la nouvelle version de Mootools 1.1, la syntaxe est ainsi faite :

new Ajax(url, {method: ‘get’}).request();

et dans url tu peux mettre ton adresse avec plusieurs parametre genre :

mapage.php?titre=kaka&valeur=boudin

Voila ;)

Fardeen le 13 July 2007 17:42 |

salut,
c’est un peu redondant mais ca le vaut vraiment, tes tutos sont extras, juste y’en a pas assez !! ah, autre chose sans importance, des que ma femme passe au bureau et matte l’ordi elle voit des nanas en tenu de eve ca fait 2 jours que je decroche pas de ton site) et du coup elle me dit, mais jamais tu bosses!! alors que je m’arrache les cheveux pour comprendre :)
y’a une chose que j’ai pas compris sur ton tuto c’est le coup du hash? je debute complement en ajax et javascript, je ne fais que du php (erreur de ma part), c’est d’ou quelle sort cette page test.html
(ref: function checkHash() )
encore merci pour tes tutos, je vais tenté un caddie avec le drop ou on peut supprimer un article etc… j’vais souffrir
merci merci et pi merci
antonin

antonin le 26 July 2007 18:38 |

Slt a tous, ecnore merci pour ton travail remarquable….
J’ai hate de refaire ton travail, pour avoir plus d’experience …..
Bonne continuation, et je ferais la pub pour ce tuto :)
Aller bye

deef le 8 August 2007 13:28 |

Merci a vous de me lire ;)

@antonin : La prochaine fois , je mettrais des motards ;)

Fardeen le 8 August 2007 15:56 |

Superbe tutorial juste un problème ou deux
erreur avec IE 7 et probablement 6 à partir de l’étape 5
Si c’est possible de corriger je ne suis pas très fort en javascript

Romanus

romanus le 29 August 2007 08:04 |

Bonjour et merci ! :-)

“Ce tutoriel est basé sur la version 0.83 de Mootools, il se peut donc que certaines choses ne fonctionnent pas avec la version 1.0″

=> Et oui rien ne fonctionne en MooTools v1.11 :-(
Y’a t’il moyen de savoir ce qu’il faut changer ?
merci

Pascal le 31 August 2007 14:45 |

@pascal : avec une erreur aussi précise que “RIEN ne fonctionne” , difficile de t’aider.

Fardeen le 31 August 2007 16:21 |

Oui, c’est, désolé, c’était un peu expéditif…
Alors, je me suis contenter de remplacer mootools.release.83.js par mootools.v1.11.js (la totale) et la page tutoriel_mootools_v7.html affiche simplement les menus de gauche déjà déployés et aucun clicks n’est efficace.
C’est plus clair ? :-)
Merci

Pascal le 1 September 2007 10:24 |

[...] pour mootools Dimanche 02 septembre 2007, 2:25 Enregistré dans : mootools, web 2.0 tutoriel motools iFishEye window-growl Pas de commentaire jusqu’à présent Laissez un commentaire Flux RSS [...]

Toujours pour mootools « Louberee’s Weblog le 2 September 2007 02:25 |

Bonjour, Merci pour le commentaire, j’ai téléchargé les sources de la gallerie AJAX mais est-ce que tu as les sources de cet exemple aussi à télécharger ?

Merci d’avance pour ton aide

Adrian

Adrian le 3 September 2007 11:23 |

Salut à tous, et bravo Fardeen pour le boulot effectué.
Juste un petit souci avec l’accordéon mootools (1.11) : je souhaiterais faire un menu de nav. pour un site php/mysql dont les entrées (du menu) se trouvent dans ma BDD (pas de problèmes jusqu’ici). Besoin donc d’accordéons imbriqués (2 acc. car 3 niveaux de menus)… et c’est là que ça se gâte ! Le problème se situe au niveau des sous-menus qui, en s’ouvrant, n’agrandissent pas la zone ouverte par l’accordéon supérieur. Une manip. est pourtant envisageable (mais je manque de compétances en js pour m’attaquer aux sources de la lib…). Je m’explique : lorsque je laisse un sous-menu ouvert et que je referme puis ré-ouvre le menu supérieur, celui-ci affiche alors la zone occupée par les sous-menus (fermés) ET la zone du sous-menu laissé ouvert précédemment, en entier. La solution serait alors d’envoyer successivement les évenements de fermeture puis ouverture à l’accordéon supérieur au sous-menu que l’on souhaite ouvrir. (j’espère avoir été clair :))
Aurais-tu, par hasard une idée sur la question ?
Merci en tout cas pour ce partage de connaissances ;)

@ Pascal : Tu peux trouver d’autres exemples d’accordéons basés sur la dernière version de mootools… avec ton moteur de recherche favoris ;)

oli406 le 10 September 2007 09:03 |

Bon j’ai (enfin) trouvé !
Il y avait bien plus simple que ma première idée…
Il suffisait de mémoriser dans une variable globale (déclarée implicitement) l’élément i passé en argument de la fontion exécutée sur le onActive du premier accordéon :
onActive: function(toggler1, i) {
elparent = i;

}
puis de redéfinir le style ‘height’ en ‘auto’ de l’élément mémorisé précedemment dans le onActive de l’accordéon imbriqué :
onActive: function(toggler2) { // je n’utilise pas le i ici
elparent.setStyle(’height’, ‘auto’);

}
et wala !
Ça peut servir… :)

oli406 le 18 September 2007 11:15 |

Salut à tous !

Merci pour ce tuto qui m’a permis de me réconcilier (enfin) avec javascript !

@ oli406 : je suis vachement intéressé par la solution que tu as trouvé pour imbriquer tes 2 accordéons. Seulement j’ai pas bien compris l’explication de ta solution. Tu pourrais redétailler un peux la modification que tu as fait avec la variable gloable ?
D’avance Merci

funkyphenix le 1 October 2007 18:15 |

Salut,

Je vais essayer d’être un peu plus explicite…
Petit rapel :
Déclarer une variable en globale dans une fonction permet de pouvoir y acceder en dehors de cette fonction, contrairement à une variable “locale” . En javascript on déclare une variable locale explicitement avec var (ex: var elparent;) et une variable globale implicitement, c’est-à-dire qu’on l’affecte directement, sans la déclarer avec var auparavant (c’est ce que je fais ici avec : elparent = i;).
Donc :
Vu qu’ici on à besoin de modifier la hauteur du conteneur de l’accordéon supérieur à l’ouverture de l’accordéon imbriqué et que cela se passe dans une fonction différente, il nous faut bien une variable globale.
C’est cet élément (le conteneur de l’accordéon supérieur) qu’on mémorise dans notre variable globale afin de pouvoir intervenir sur ses propriétés ultérieurement dans une autre fonction (éventuellement dans d’autres fonctions aussi).
De même, théoriquement, pour implémenter un troisième accordéon imbriqué il faudrait mémoriser les conteneurs des deux accordéons supérieurs dans des variables globales distinctes et au déclanchement de l’évenement onActive du 3ème accordéon il faudrait redéfinir la auteur de ces conteneurs dans le bon ordre (2ème puis 1er). Je n’ai pas testé mais ça devrait le faire.
Voilà, j’éspère avoir répondu à ta question, funkyphenix, sinon n’hésites pas… :)
Bon dev à tous !

oli406 le 3 October 2007 10:52 |

Salut à tous !

Merci oli406 pour ces précisions. J’ai réussi à mettre en oeuvre l’imbrication des accordéons.. Merci beaucoup !

Bon courage à tous !

Funkyphenix le 4 October 2007 08:41 |

Salut salut…

Après avoir passé près de 2 jours à chercher une solution, je viens demander un peu d’aide aux masters qui trainent par ici…!

Bien sur, ça concerne Mootools (v1-11) et son fameux Accordéon.

Je cherche à remplacer l’action du “click” sur le titre d’une liste par un “mouseover” (ou “mouseenter” dans le jargon mootools).
- Impossible de trouver une info sur l’option à modifier… (si elle existe…)
- Impossible également de trouver un tutorial qui fonctionne.
J’avais cru trouver mon bonheur avec cette page (www.creativepony.com/journal/scripts/autoaccordion/) mais hélas, l’auteur est passé à un niveau de prog trop obscur pour moi !!! Même en reprenant son exemple à la lettre, ça ne fonctionne pas !

Bref, je nage un peu !!! Ami de la plongée nocture… si vous avez une idée, mieux, un exemple simple qui fonctionne, je suis preneur !

Et d’ici là… méfiez-vous des fausses… bonnasses !

Funkyphenix le 17 October 2007 17:30 |

bonjour, c’est un bon tuto mais le lien pour télécharger mootools ne fonctionne pas du tout et je n peux pa télécharger mootools…

y le 2 November 2007 10:25 |

Bonjour,
Désolé!!!!!!
Moi perso, j’ai rien compris et pourtant je programme PHP5 et XHTML mais je connais pas bien javascript et quand je regarde le tutoriel je me dis trois choses, la première c’est que c’est bien fait et que vous êtes fort ( c’est sincère ) ! La deuxième, je ne comprends pas d’où sort le code javascript que vous écrivez ( sur Mootools que j’arrive pas à utiliser, je ne vois rien de tel, donc d’où ça sort! Si je dois créer moi même avec ma puissance de calcul et mon cerveau mon propre code alors je vois même pas pourquoi j’aurais besoin de Mootools, autant apprendre javascript) . En troisième, franchement, Mootools release 1.11, y’a plein de truc dedans incompréhensibles et surtout ici, il n’est pas dit ( où alors j’ai pas bien cherché ) comment utiliser ce maudit programme plein de fonctions et comment dans le programme accordéon le lien est fait!!! Si vous pouvez m’éclairer j’aurais enfin la réponse à l’énigme puisque apparemment je n’ai trouvé sur Internet cette explication ( je suis sérieux, j’ai l’intention d’abandonner un an et demi d’apprentissage à cause de ça et bosser dans la restauration)

Hervé le 7 November 2007 23:25 |

Hey Hervé !! Allez on s’accroche ! reviens va pas te pendre :D

Plus serieusement , le code que j’ecrit vient de mon cerveau et le tien va devoir s activer aussi ;)

Pr faire bref , Mootools est une surcouche de Javascript qui permet d’obtenir des fonctions avancées basées sur celles plus basique de Javascript.
Tu peux avoir plein d’exemple de ce qu’on peut faire la http://demos.mootools.net/ et tu a egalement le code source pour voir comment c’est fait.

Allez courage ;)

Fardeen le 8 November 2007 00:35 |

salut hervé,
un peu dans ton cas, je fais du php et pas de javascript, je m’y suis mis avec mootools, comme le dis Fardeen , regarde les demos, et la aussi : http://beautyindesign.com/tutorial/increasing_user_experience_with_javascript.php
franchement pour faire des trucs basics, accordeon, effet etc…. c’est vraiment facile surtout si tu programmes dejà. apres, pour faire des choses plus complexe comme un caddie en drag and drop par exemple , ca demande plus de temps mais bon on apprend pas le php en commencant à faire des classes ;)
bon courage

antonin le 8 November 2007 08:01 |

Merci de vos réponses,
C’est gentil à vous. Bon je vais essayer!
A plus

Hervé le 8 November 2007 11:29 |

Merci à vous les gars, c’est très gentil. Bon, je vais essayer de me mettre au Javascript alors!
A plus

Hervé le 8 November 2007 11:34 |

bonjour a tous.
merci pour ce super tuto. Impossible a faire sinon.
j’ai une question, j’ai réussie a intégrer le mootools, mais j’aimerai que mon menu fait avec mootools passe par dessus de mon image.

pouvez vous m’aider?

merci d’avance

http://www.neoloop.info/test/code.html

mika le 9 November 2007 19:21 |

Bonsoir,

suite au message précédent, j’ai une question subsidiaire.

Je suis arrivé à mettre en place les slides mootools.

Mais j’aimerai mettre à l’intérieur de ces fenetres plusieurs div’s (3 colonnes) avec float left.
Mais des qu’un élément utilise un attribut float (div, ul, li), la slide ne fonctionne plus.

Donsc ma question, commet disposer à l’intérieur de la slide, des éléments en 3 colonnes distinctes.

Merci de votre réponse.

gbert le 19 November 2007 18:08 |

@mika : positionne la dans un autre div avec un margin-left et change le z-index

@gbert : avec une URL , ce serait plus simple de t’aider.

Fardeen le 20 November 2007 01:38 |

Bonjour a tous.
@ Fardeen, j’ai mis un URL dans mon message.
http://www.neoloop.info/test/code.html

merci de ton aide.

mika

mika le 20 November 2007 09:18 |

Bonjour,

Merci Mika pour ta réponse.

Malheuresement ca ne marche pas avec l’attribut z index.

Je te mets un lien http://www.formalliance.com/autres/test/index.htm#sommet

Ce site est en développement, ne pas tenir compte de l’ensemble.

J’ai ce problème de slive en bas de l’écran sur le lien Liens. Pour la slive plan du site j’aurai le meme.
J’aimerai disposer mon texte sous la forme de 3 cols justaposées.
J’utilise habituellemnt l’attribut float.
Mais dans une slide cet attribute mpeche l’ouverture de la slive qui ne fonctionne plus.
D’autre part quand la slive s’ouvre en pied de page, elle n’agit pas sur le défilement de la fenêtre, il y a t il un moyen de déclencher un scroll automatique ?

Je cherche donc un autre moyen.
Je pourrai aussi me tourner vers un systeme de tabs, avez vous un conseil sur le code à utiliser ?

Merci de votre aide.

gbert

gbert le 23 November 2007 10:34 |

Salut!

super tuto, mais j’ai eu un soucis dès le début. J’ai récupéré les librairies et autres add on mootools-release-1.11.js (dernière release officielle en date d’aujourd’hui, je ne me suis pas risqué sur la version bêta). Donc, je n’ai pas téléchargé la même version que celle que tu as utilisé pour ton tuto. Or, impossible de faire fonctionner la bête. J’ai été obligé de récupérer la version .83.

Pourtant j’ai bien coché toutes les options proposées par mootools. Y’a t’il des incompatibilité entre ton code et ce que propose la version 1.11?? Bizzare quand même non?

Ou alors c’est moi qui me suis laissé distraire par les zolies demoiselles???
:)

denis le 17 December 2007 14:10 |

Bonjour

Qui pourrait m’éclairer sur l’application Google Api ?

j’ai installé google map et je souhaite que sur la page http://www.quipollue.com/displayimage.php?album=random&cat=0&pos=-42 le marqueur de la carte s’ouvre automatiquement.
J’ai essayé ceci, mais l’infobulle est vide.
Je n’arrive pas faire passer l’information dans le marqueur.
j’ai ajouté ceci :setTimeout(”marker.openInfoWindowHtml().maximize()”,0);
Si je supprime cette ligne, il faut cliquer sur le marqueur et ça fonctionne normalement.

//

Xavier

xavier le 30 December 2007 22:23 |

le script que j’ai mis en exemple dans le précédent post à été tronqué. !??
le revoici .
Bonjour

Qui pourrait m’éclairer sur l’application Google Api ?

j’ai installé google map et je souhaite que sur la page http://www.quipollue.com/displayimage.php?album=random&cat=0&pos=-42 le marqueur de la carte s’ouvre automatiquement.
J’ai essayé ceci, mais l’infobulle est vide.
Je n’arrive pas faire passer l’information dans le marqueur.
j’ai ajouté ceci :setTimeout(”marker.openInfoWindowHtml().maximize()”,0);
Si je supprime cette ligne, il faut cliquer sur le marqueur et ça fonctionne normalement.

[js]

if (GBrowserIsCompatible()) {

//create map
var map = new GMap2(document.getElementById(”small_map”));
map.setCenter(new GLatLng($latitude,$longitude), {$default_zoom_level});
map.setMapType({$CONFIG['gmap_small_type']});
map.setMapType(G_SATELLITE_MAP);
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());

// Creates a marker whose info window displays the file info
function createMarker(point, content)

{
var marker = new GMarker(point);
// Show this markers index in the info window when it is clicked
var html = content;

GEvent.addListener(marker, “click”, function(){marker.openInfoWindowHtml(html);});
setTimeout(”marker.openInfoWindowHtml().maximize()”,0);

return marker;
};
//code output for points
$point_code;
} else {
alert(”Sorry, the Google Maps API is not compatible with this browser”);
}

[/js]

Xavier

xavier le 30 December 2007 22:28 |

Bonjour, est il possible d’implémenter un menu comme sur ce site: http://codeigniter.com/user_guide/ (voir ‘table of contents’ en haut) à la différence près que le menu serait en bas de la bage et un clique sur l’onglet ferait remonter le menu. Merci pour toute aide!

spirit le 2 January 2008 22:52 |

@spirit oui c’est possible.

Fardeen le 5 January 2008 16:52 |

Bonjour,

J’essaie de relooker mon site et j’ai décider d’utiliser le Framework Mootools.
Mais j’en bave un max, il faut dire que ma culture javascript est défaillante.

Je me bats avec mes volets avec effet accordion.

Mes volets étant assez haut, j’aimerai pouvoir les repositionner en sommet d’écran quand on les choisit, pour éviter les aller/retour fastidieux à la souris.

J’ai partiellement résolu le problème en insérant des ancres dans mes liens “en voir +”. Mais ca ne fonctionne pas à tout les coups.
Et en plus en cliquant sur le volet lui meme c’est n’importe quoi!!

Je pense maintenant que c’est un problème de programmation, mais là, je calle lamentablement.

Peut etre une aide sur ce forum ?

Lien : http://www.formalliance.com/autres/dev/bureautique.htm

Merci d’avance

gbert le 7 January 2008 14:36 |

Bonjour du Québec… excellent tutoriel Fardeen, très beau travail.

Petit question, mon site fonctionne très bien avec Mootools sur Internet Explorer. Toutefois, sur Firefox et Safari, les filets d’une hauteur de 1 pixels deviennent plus “épais” à environ 10 pixels. Aussi, la disposition typographique est différente d’une fureteur à l’autre.

Comment pourrais-je corriger cette situation et obtenir un “look” qui est passablement identique d’une fureteur à l’autre?

Merci de ton aide!

Sumo Wasabi le 21 January 2008 19:07 |

@gbert dsl pr le délai de réponse, ton lien ne marche plus mais j’espere que tu as trouvé une solution à ton pb.

@sumo ton probleme vient des CSS. J’ai regardé vraiment brievement mais tu devrais installer Firebug sur firefox et tu vas tout de suite voir de quoi ca vient. Je vois que tu as fais une mise en page en tableau (bouh pas bien!) et apparement ca viendrais de ca. Essaye avec des margin et padding a 0 pr tes TD de tes tableaux.

Fardeen le 22 January 2008 11:23 |

Merci pour ce tuto très intéressant et bien construit. On apprécie la documentation des sources et les étapes bien réparties.

Encore merci, je cherchais justement à étudier Mootools, je crois que je vais pouvoir m’y mettre rapidement.

Cordialement, Azema

Azema le 27 February 2008 11:03 |

j’ai utilisé un simple accordeon en mootools et ca marche super sur firefox, sur IE par contre … il déploie tout l’accordéon et quand on clique sur une partie il fait le mouvement d’accordéon et redéploie le tout… je comprend pas

taitongue le 15 March 2008 22:06 |

[...] sans utiliser la moindre ligne de code Javascript, uniquement du PHP. (on a assez fait avec le tutoriel sur Mootools, n’est ce pas [...]

Tutoriel application Google Map avec PHP | Fardeen GHULAM le 16 March 2008 14:23 |

Salut.
Tout d’abord merci pour ce tuto qui m’a fois est tres sympa.
J’aurais une question car j’essaye d’un faire un accordéon à ma sauce mais en utilisant la fonction slide et je voudrais savoir comment faire pour utiliser une classe css avec le sélecteur $().
En effet je vois toujours $(’element’) ou element représente l’id et moi je veux pouvoir utiliser une classe.
j’ai essayer $(’.ma_classe’) ou $(’#id_parent div.ma classe’) ou $(’#id_parent .ma classe’) mais aucun ne fonctionne.
Quelqu’un aurait une piste s’il vous plait?
merci

Miky le 18 March 2008 11:05 |

Tout comme Taitongue mes essais de ” l’accordeon ” avec mootools se solde par un succés sous firefox mais avec Internet explorer tous les panneaux sont ouverts des le début. Aprés plusieurs tentatives j’ai fini par télécharger les fichiers d’une démo qui fonctionnait trés bien avec les 2 navigateurs et je les ai implantés sur mon site et la patatra mon problème ressurgi.
Aprés cogitation et énervements multiples j’en suis venu à la conclusion que cela venait de mon hébergement. En effet j’utilise un hébergement gratuit (XDIR mais même souci avec Ifrance et Lycos Multimania) et donc il y a un bandeau de pub. Je pense que c’est l’ouverture de ce bandeau qui entraine l’ouverture de l’accordéon sous IE.
Si quelqu’un connait la modif a faire pour qu’il n’y ai plus d’interférence, je suis preneur.

D’avance merci

Rigs le 6 May 2008 08:47 |

salut miky,
je dis ça comme ça sans avoir essayé mais essaye voir avec $$(’.maclasse’) de facon à ce que ça s’applique à tous les éléments comprenant la classe

antonin le 7 May 2008 20:58 |

Merci antonin
J’avais cherché depuis, et effectivement je crois que ca marchait avec $$ ou $E.
La je suis au boulot,donc j’ai pas mon code sous les yeux et je ne peux pas affirmer que c’est l’un ou l’autre.
Merci

Miky le 8 May 2008 07:53 |

Une petite question. $$(’monelement’) ne marche pas sous IE on est daccord? il selectionne seulement le premier élement. Nikel sur firefox. ya t il une soluce pr recup un tableau d’element sous ie, et qui fonctionne??

aidez moi svp, thx anto

louis le 2 June 2008 07:12 |

si $$ marche sous ie, firefox, safari etc…

antonin le 3 June 2008 06:41 |

bizare g plusieur element avec id=”lien”, avec $$(’#lien’).setStyle(’font-size’,'20px’) sa applike a tous ces element sous FF mais seulement le premier sous IE.
alors g palié au pb avec $(’body’).getElements(’a[id=lien]‘).setStyle(’font-size’,'20px’)

louis le 3 June 2008 06:51 |

je ne connais pas ton cas précis mais normalement les id sont uniques dans une page, faut mieux utiliser les class si tu as plusieurs fois la meme chose
tu peux aussi faire $$(’monid’). Vérifie dans la doc ton ecriture de setStyle. j’ai un doute mais je peux me tromper

antonin le 3 June 2008 07:06 |

Salut

Je débute dans le développement WEB mais j’ai 20 ans de pratique dans le développement d’application “lourdes” sous Windows. Franchement un tuto comme celui la je me rend bien compte que c’est un boulot de dingo et je tenais à te remercier de le faire partager à tous. Je suis tombé sur ta page suite à une recherche sur Google pour faire fonctionner le slide de artviper.net. Je vais mettre ton site dans mes favoris (ils sont peux nombreux…) et prendre le temps de comprendre tout ça. Un grand merci

djf le 6 June 2008 19:21 |

Salut à tous,
Je travaille sur un trombinoscope pour mon stage et je vais utiliser ce superbe tuto pour le faire (je débute en javascript et tout et tout).
J’avais juste une petite question est-il possible de mettre dans l’info bulle des informations qui proviennent d’une base de données ? (par exemple le nom de la personne, son departement, numero de tel etc…. pour mon trombi)

Voila en espérant d’autres tuto de cette qualité.
@+ Nico.

Nicolas le 9 June 2008 09:25 |

C’est bon j’ai trouvé la solution avec le tuto phpmyedit merci encore ;)

Nicolas le 11 June 2008 05:40 |

je vous remercie pour certe image :D

prenom le 20 July 2008 07:27 |

Bonjour, super tutoriel… Cependant cela date un peu et certains liens sont morts, une petite révision chef ?

Kro le 5 August 2008 20:41 |

[...] Le lien est par ici. [...]

Tutorial Javascript, Mootools//Lire la suite… // Le Blog John’s Graphisme le 31 August 2008 17:04 |

[...] // J‘étais en train de lire mes mail, quand d’un seul coup, je reçoit un mail, avec ce lien à l’intérieur, un tutorial sur le fameux Mootools, qui permet la réalisation de choses toutes aussi jolies les unes que les autres. J’ai un ami, qui vient de réaliser une appli assez hallucinante en php et en Javascript, n’est ce pas Charles ??? Bon, allons regarder ce lien, et ce tutorial très sympa, bonne lecture à vous. Le lien est par ici. [...]

Tutorial Javascript, Mootools//Lire la suite… // Le Blog John’s Graphisme le 31 August 2008 17:25 |

bonjour, très bon tuto : j’ai “presque” tout compris,
juste petite question (comme je suis nul en js) : comment afficher un document nécessitant un plug-in (balises embed et object => c’est du .djvu) avec mootools?
merci richard

richard le 7 September 2008 10:00 |

Bonjour,
Merci pour ce superbe tuto qui m’a beaucoup aidé pour l’affichage de ma galerie photo.
Par contre, le seul problème, c’est qu’avec l’affichage slimbox je n’ai pas la possibilité de navigué d’une photo à l’autre avec les flèches précédent et suivant.
Cela ne marche pas non plus dans ton tuto.
Aurais tu s.t.p. une idée pour le faire fonctionner.
Merci d’avance
@+ Pascal

Pascal K. le 29 December 2008 09:13 |

Ah, ah, ah ! “les noobs”, hein ?! Et toi, ton encodage, il est correct ? UTF-8 ? Mais bien-s

UTF-8 le 21 January 2009 01:23 |

franchement mille merci tres bien expliqquer rien a dire j ai teste avec une faciliter grave. je te kiff tutoriel

ben de laval le 11 March 2009 06:54 |

Bonjour,

J’utilise Mootools depuis que j’ai découvert ce tuto. J’aime bien les effets produits. Par contre, j’ai un soucis. J’essaie d’avoir sur une même page des effets avec fxslide et des effets avec smoothbox. J’ai mootools 1.2 + smoothbox.js + fxslide.js. Cela ne fonctionne pas. J’ai soit l’un, soit l’autre.

Pouvez-vous m’aider ?

Merci

Dom

piel le 20 March 2009 22:19 |

Laisser un commentaire