Adapter un script pour fermer une fenêtre
Bonjour à tous,
J'ai trouvé un menu horizontal responsie que j'aime bien mais qui est peut documenté, En il ne l'est pas.
Je n'ai pas besoin de truc d'énorme et ceci
http://www.smart-idea.io/perrieres/measures/
répond à mon besoin.
Sauf que j'aimerais ajouter un bouton pour fermer le menu. Et je n'arrive pas à comprendre le script
http://www.smart-idea.io/perrieres/m...izontalMenu.js, pourtant simple, pour que mon lien ferme le menu.
Alors pour être plus explicite, aller sur cette page
http://www.smart-idea.io/perrieres/measures/
Puis developpez 'Filtre'.
Vous verrez en bas, que j'ai ajouter un lien "Fermer". Quand je clique sur close, il doit refermer la partie verte, comme si je recliquais sur filtre, ou, n'importe où en dehors de la partie verte. Car en effet, quand on clique à l'extérieur de la partie verte, cette dernière ce referme.
J'ai essayé de comprendre qu'est-ce qui cause la fermeture quand on reclique sur "Filtre"
Je pense que c'est ceci
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| function open( event ) {
if( current !== -1 ) {
$listItems.eq( current ).removeClass( 'cbp-hropen' );
}
var $item = $( event.currentTarget ).parent( 'li' ),
idx = $item.index();
if( current === idx ) {
$item.removeClass( 'cbp-hropen' );
current = -1;
}
else {
$item.addClass( 'cbp-hropen' );
current = idx;
$body.off( 'click' ).on( 'click', close );
}
return false;
} |
Mais qu'est ce qui appelle la function open?
Ne serait-ce pas à l'initiation
Code:
1 2 3 4 5
| function init() {
$menuItems.on( 'click', open );
$listItems.on( 'click', function( event ) { event.stopPropagation(); } );
$(".cl").on( 'click', function( event ) { event.stopPropagation(); } ); // Attention, ca c'est moi qui l'ai rajouté
} |
dans menuItems ou listItems?
Mais comment dire au script que <a class="cl"> doit faire la même chose que <a href="#">Filtre</a>.
Vu que le lient filtre, n'a pas d'id ni de class, je vois pas comment le script se réfère à ce dernier, sauf ici
Code:
1 2 3 4
| var $listItems = $( '#cbp-hrmenu > ul > li' ),
$menuItems = $listItems.children( 'a' ),
$body = $( 'body' ),
current = -1; |
mais encore il ne spécifie pas lequel de lien?
Alors ma question, comment faire pour ajouter un nouveau bouton (ou lien) qui va fermer ce volet vert.
Merci pour vos lumières