2013-02-28 3 views

Répondre

1

Vous devez généralement éviter javascript en ligne, voir: http://robertnyman.com/2008/11/20/why-inline-css-and-javascript-code-is-such-a-bad-thing/

Vous devez utiliser les fonctions mouseover et mouseout à la place: http://api.jquery.com/mouseover/

$(function() { 
    $('#menu').mouseover(function() { 
     $('#TestMenu').show(); 
    }).mouseout(function(){ 
    $('#TestMenu').hide(); 
    });; 

});

http://jsfiddle.net/MMHVv/16/

Le Testmenu devrait également être placé à l'intérieur de la première div, de sorte que le passage de la souris est également efficace lorsque vous passez la souris sur la Testmenu.

1

j'avais vu votre code ..

Je ne sais pas ce qui s'est passé avec l'événement mousemove dans firefox

si vous remplacez mousemove avec mouseover il fonctionne très bien ..

onmouseover="return ShowMenu($(this));" 
0

Essayez ceci juste avec votre structure, mais une modification [removed the id for the menuitems]:

$(function() { 
    $('.menu').on({ 
    mouseover: function() { 
     $('.menuItem').slideUp(); 
     $(this).next().slideDown(); 
    } 
    }); 
    $('.menuItem').on({ 
    mouseleave: function() { 
     $(this).slideUp(); 
    } 
    }); 
}); 

vérifier la fiddle

Questions connexes