Javascript JS下拉菜单没有';行不通

Javascript JS下拉菜单没有';行不通,javascript,jquery,html,Javascript,Jquery,Html,我有一些js代码,必须在鼠标悬停时打开我的菜单。但它在鼠标滑过/滑出时不起反应。我哪里弄错了 jQuery(document).ready(function() { jQuery('#user-menu').bind('mouseover', openSubMenu); jQuery('#user-menu').bind('mouseout', closeSubMenu); function openSubMenu() {

我有一些js代码,必须在鼠标悬停时打开我的菜单。但它在鼠标滑过/滑出时不起反应。我哪里弄错了

jQuery(document).ready(function() {
        jQuery('#user-menu').bind('mouseover', openSubMenu);
        jQuery('#user-menu').bind('mouseout', closeSubMenu);

        function openSubMenu() {
            jQuery(this).find('.dropdown-menu').css('display', 'block');    
        };

        function closeSubMenu() {
            jQuery(this).find('.dropdown-menu').css('display', 'none'); 
        };

    });
这里还有一些html代码

<div id="user-menu" class="pull-right btn-group"><a class="btn btn-success dropdown-toggle" data-toggle="dropdown" href="#">User menu
  <span class="caret"></span>
    </a>
    <ul class="dropdown-menu" id="user_dropdown_menu"><li class="menu-2 first"><a href="/courses/user">My account</a></li>
<li class="menu-15 last"><a href="/courses/user/logout">Log out</a></li>
</ul>
  </div>

试试这个:

jQuery(document).ready(function() {
  function openSubMenu() {
         jQuery(this).find('.dropdown-menu').css('display', 'block');
  };
  function closeSubMenu() {
         jQuery(this).find('.dropdown-menu').css('display', 'none');
  };

  jQuery('#user-menu').bind('mouseover', openSubMenu);
  jQuery('#user-menu').bind('mouseout', closeSubMenu);
}); 

我建议使用jQuery的
悬停

$(document).ready(function() {
    $('#user-menu').hover(function () {
        $(this).find('.dropdown-menu').toggle();
    });
});
注:

  • 将一个函数传递给将为mouseover和mouseout触发它
  • 将根据元素的当前状态显示或隐藏

看起来它可以在wierd上工作,在JSFIDLE上确实可以工作,但在LocalHost上没有响应您是否包括jquery.js?你的本地错误控制台怎么说?附言:你不需要
在函数末尾,只需使用hover或mouseenter/mouseleave或hoverintent。