Rechercher : dans
Par :

Problème Fancy Menu avec Mootools

Manatee, le 14 avr 2008 à 12:07:06 
 Signaler ce message aux modérateurs

Bonjour,

J'ai un soucis avec un Fancy Menu qui fonctionne avec Mootools, je l'ai fait en suivant ce tutoriel [url="http://devthought.com/cssjavascript-true-power-fancy-menu/"]http://devthought.com/cssjavascript-true-power-fancy-menu//url .

Au début j'avais un problème car les liens étaient cliquable mais ne fonctionné pas.

Pour résoudre le problème j'ai changé ce code :

window.addEvent('domready', function() {
new SlideList($E('ul', 'fancymenu'), {transition: Fx.Transitions.backOut, duration: 700, onClick: function(ev, item) { ev.stop(); }});
});

Par celui ci :

window.addEvent('domready', function() {
// orange menu demo
if($('fancymenu'))
FancyExample = new SlideList($E('ul', 'fancymenu'), {transition: Fx.Transitions.backOut, duration: 700});
});

Maintenant les liens fonctionnent parfaitement mais le "background" reste toujours derrière le liens accueil et je n'arrive pas a trouver de solution, alors si quelqu'un peut m'aider ça serait bien gentil.

Voilà le code complet :

menu.js
var SlideList = new Class({
initialize: function(menu, options) {
this.setOptions(this.getOptions(), options);
this.menu = $(menu), this.current = this.menu.getElement('li.current');
this.menu.getElements('li').each(function(item){
item.addEvent('mouseover', function(){ this.moveBg(item); }.bind(this));
item.addEvent('mouseout', function(){ this.moveBg(this.current); }.bind(this));
item.addEvent('click', function(event){ this.clickItem(event, item); }.bind(this));
}.bind(this));

this.back = new Element('li').addClass('background').adopt(new Element('div').addClass('left')).injectInside(this.menu);
this.back.fx = this.back.effects(this.options);
if(this.current) this.setCurrent(this.current);
},

setCurrent: function(el, effect){
this.back.setStyles({left: (el.offsetLeft)+'px', width: (el.offsetWidth)+'px'});
(effect) ? this.back.effect('opacity').set(0).start(1) : this.back.setOpacity(1);
this.current = el;
},

getOptions: function(){
return {
transition: Fx.Transitions.sineInOut,
duration: 500, wait: false,
onClick: Class.empty
};
},

clickItem: function(event, item) {
if(!this.current) this.setCurrent(item, true);
this.current = item;
this.options.onClick(new Event(event), item);
},

moveBg: function(to) {
if(!this.current) return;
this.back.fx.custom({
left: [this.back.offsetLeft, to.offsetLeft],
width: [this.back.offsetWidth, to.offsetWidth]
});
}
});

SlideList.implement(new Options);

main.js
window.addEvent('domready', function() {
// orange menu demo
if($('fancymenu'))
FancyExample = new SlideList($E('ul', 'fancymenu'), {transition: Fx.Transitions.backOut, duration: 700});
});



Merci d'avance !

Configuration: Windows XP
Firefox 2.0.0.13

Meilleures réponses pour « Problème Fancy Menu avec Mootools » dans :
Comment créer une carte de menu de Noël VoirQuoi de plus "fashion" que de présenter une carte/un carton de menu de Noël ! Sympa, élégant, rigolo aussi, c'est selon ! Voici une petite astuce qui vous guidera dans votre création et... votre créativité ! Sommaire Choisir le menu de...
Réorganiser le menu Démarrer VoirAu fur et à mesure des diverses installations, le "Menu Démarrer" devient de plus en plus rempli et très mal organisé. Voilà comment procéder pour obtenir un menu organisé. Accéder au menu Démarrer Sous Vista, ce fichier est caché donc il faut...
[Vista] Afficher la commande Exécuter du menu Démarrer VoirAfficher la commande "Exécuter" du menu Démarrer Lors de l'acquisition de votre nouveau système d'exploitation Vista, vous vous apercevrez que la commande "Exécuter", qui est assez coutumière et serviable chez son petit frère XP, n'existe...
Windows 7 - Barre des tâches et menu démarrer VoirLA BARRE DES TACHES ET LE MENU DEMARRER Cet élément clé du Bureau de Windows est situé en bas de l’écran, sur toute sa largeur. C’est l’un des aspects du système qui a le plus évolué entre Windows Vista et Windows 7. Pour commencer, elle est plus...
Collection CommentÇaMarche.net