IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Délai d'ouverture sur un menu jQuery (jsddm)


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2
    Par défaut Délai d'ouverture sur un menu jQuery (jsddm)
    Bonjour à tous,

    J'aimerai pouvoir temporiser avant l'ouverture de mon menu.

    Voilà mon code qui ouvre et ferme mon menu :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    // Drop Down menu (jsddm)
     
    		var timeout    = 500;
    		var closetimer = 0;
    		var ddmenuitem = 0;
     
    		function jsddm_open()
    		{  jsddm_canceltimer();
    		   jsddm_close();
    		   ddmenuitem = ($(this).find('ul').css('visibility', 'visible'), timeout);}
     
    		function jsddm_close()
    		{  if(ddmenuitem) ddmenuitem.css('visibility', 'hidden');}
     
    		function jsddm_timer()
    		{  closetimer = window.setTimeout(jsddm_close, timeout);		
    		}
     
    		function jsddm_canceltimer()
    		{  if(closetimer)
    		   { 
     
    		   window.clearTimeout(closetimer);
    			  closetimer = null;	  
    			  }}
     
    		$(document).ready(function()
    		{  $('#jsddm > li').bind('mouseover', jsddm_open)
    		   $('#jsddm > li').bind('mouseout',  jsddm_timer)});
     
    		document.onclick = jsddm_close;
    J'ai peu de connaissances en Javascript.
    Merci à tous pour votre aide.
    Cordialement.
    Sébastien.

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ddmenuitem = ($(this).find('ul').css('visibility', 'visible'), timeout);
    Il manquerait pas le nom de la fonction que tu souhaites appeler avec ces paramètres par hasard ?
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Nouveau candidat au Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2
    Par défaut
    Bonjour à tous,

    J'ai trouvé une solution pour ceux que ça intéresse :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    // Drop Down menu (jsddm)
    		var timeout    = 500;
    		var closetimer = 0;
    		var ddmenuitem = 0;
     
    		function jsddm_open()
    		{  jsddm_canceltimer();
     
    		   jsddm_close();
    		   ddmenuitem = $(this).find('ul').css('visibility', 'visible');}
     
     
    		function jsddm_close()
    		{  if(ddmenuitem) ddmenuitem.css('visibility', 'hidden');}
     
    		function jsddm_timer()
    		{  closetimer = window.setTimeout(jsddm_close, timeout);		
    		}
     
    		function jsddm_canceltimer()
    		{  if(closetimer)
    		   { 
     
    		   window.clearTimeout(closetimer);
    			  closetimer = null;
     
    			  }}
     
    $(function() {
    $('#jsddm > li').hoverIntent(jsddm_open, jsddm_timer);
    document.onclick = jsddm_close;
    });
    Cordialement.
    Sébastien.

Discussions similaires

  1. Coder avec jquery un timer sur mon menu
    Par fabio bonzini dans le forum jQuery
    Réponses: 0
    Dernier message: 21/06/2015, 17h35
  2. Ouverture d'une autre fenêtre par un clic sur un menu
    Par helabah dans le forum Interfaces Graphiques en Java
    Réponses: 6
    Dernier message: 29/05/2012, 14h40
  3. nombreux problèmes sur mon menu de gauche
    Par pp51 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 12/12/2005, 21h00
  4. boutons avec images sur un menu
    Par ENDAMA NDONG dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 23/11/2005, 11h30
  5. cocher un element sur un menu
    Par Invité dans le forum MFC
    Réponses: 4
    Dernier message: 24/08/2005, 14h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo