我的母版页中有以下代码:
jQuery:
$(window).load(function () {
$("li.submenu").hover(
function () { $(this).find("ul").slideDown("slow"); },
function () { $(this).find("ul").slideUp("slow"); }
);
});
HTML:
<ul class="menu" runat="server" id="Menu">
<li class="first" runat="server"><asp:HyperLink runat="server" NavigateUrl="/index.aspx">Home</asp:HyperLink></li>
<li class="submenu" runat="server">
<asp:HyperLink runat="server" NavigateUrl="/categories/index.aspx">Products</asp:HyperLink>
<ul runat="server">
<li runat="server"><asp:HyperLink runat="server" NavigateUrl="/categories/category1.aspx">Dogs</asp:HyperLink></li>
<li runat="server"><asp:HyperLink runat="server" NavigateUrl="/categories/category2.aspx">Category 2</asp:HyperLink></li>
<li runat="server"><asp:HyperLink runat="server" NavigateUrl="/categories/category3.aspx">Category 3</asp:HyperLink></li>
<li runat="server"><asp:HyperLink runat="server" NavigateUrl="/categories/category4.aspx">Category 4</asp:HyperLink></li>
<li runat="server"><asp:HyperLink runat="server" NavigateUrl="/categories/category5.aspx">Category 5</asp:HyperLink></li>
<li class="last" runat="server"><asp:HyperLink runat="server" NavigateUrl="/categories/category6.aspx">Category 6</asp:HyperLink></li>
</ul>
</li>
<li class="last" runat="server"><asp:HyperLink runat="server" NavigateUrl="/contact.aspx">Contact Us</asp:HyperLink></li>
</ul>
如果我将其更改为toggle("slide")
它从一侧滑入,然后在鼠标进入和离开时从同一侧退出li.submenu
。这意味着元素的存在是确定的,并且没有错别字。然而 slideDown 和 slideUp 功能似乎没有运行(除非慢意味着超快......)。
我为 jQuery 和 jQuery UI 包含的文件是 jquery-1.4.2.js 和 jquery-ui-1.7.2.custom.min.js。这已经足够了,不是吗?
我有 CSS 来指定子菜单立即显示或隐藏(display: block;
/ display: none;
),以防用户没有 JS。这是否有可能导致问题?我是否应该使用 JS 更改子菜单的类,以便在启用 JS 时 CSS 无法对其进行操作?还是有其他不是由 CSS 引起的问题?