我正在使用jQuery-ui的菜单功能。看到我的example fiddlejquery-ui的菜单
我的问题是,当您将鼠标悬停在菜单上并退出时,所有子菜单也会退出。但是当你在子菜单中并且你离开时,子菜单将保持打开状态。它不会关闭,直到你点击菜单外
我尝试添加该代码,但它不会工作:
$("#menu").mouseleave(function(){
$(".ui-menu-item").collapseAll();
});
我想要的子菜单中消失过一次,我用鼠标离开
我正在使用jQuery-ui的菜单功能。看到我的example fiddlejquery-ui的菜单
我的问题是,当您将鼠标悬停在菜单上并退出时,所有子菜单也会退出。但是当你在子菜单中并且你离开时,子菜单将保持打开状态。它不会关闭,直到你点击菜单外
我尝试添加该代码,但它不会工作:
$("#menu").mouseleave(function(){
$(".ui-menu-item").collapseAll();
});
我想要的子菜单中消失过一次,我用鼠标离开
我觉得你这会有所帮助。
为<ul>
标记添加类submenu
。
HTML
<ul id="menu">
<li><a href="#">Item 1</a></li>
<li><a href="#">Item 2</a></li>
<li><a href="#">Item 3</a>
<ul class="submenu">
<li><a href="#">Item 3-1</a></li>
<li><a href="#">Item 3-2</a></li>
<li><a href="#">Item 3-3</a></li>
<li><a href="#">Item 3-4</a></li>
<li><a href="#">Item 3-5</a></li>
</ul>
</li>
<li><a href="#">Item 4</a></li>
<li><a href="#">Item 5</a></li>
</ul>
JQuery的
$(".submenu").mouseout(function(){
$(".submenu").hide();
});
$(".submenu").mouseover(function(){
$(".submenu").show();
});
呃,鼠标悬停是不是会打开所有子菜单?也许你的意思是$(this).show/hide()? – Cuse70
UPDATE:
我找到更好的文档在http://api.jqueryui.com/menu/,它好像你要使用的collapseAll
方法上mouseleave
。此更新小提琴:http://jsfiddle.net/FwBNE/7/
$(document).ready(function() {
var menu = $("ul.menu").menu();
$(menu).mouseleave(function() {
menu.menu('collapseAll');
});
});
ORIGINAL:
这似乎工作:
$(document).ready(function() {
var menu = $("div#menu > ul.menu").menu();
menu.menu('widget').hide();
$('div#menu').hover(function() {
menu.menu('widget').show();
}, function() {
menu.menu('widget').hide();
});
$(menu).hover(function() {
menu.menu('widget').show();
}, function() {
menu.menu('widget').hide();
});
});
我很感谢你的帮助,但为什么你隐藏了第一个菜单,不能和第一个菜单一样显示? –
我在urs上做了一些改变,http://jsfiddle.net/GdBTc/1/,但仍然有一个亲,如果你离开,边界仍然在菜单 –
如果你想第一个菜单总是打开,那么你的原始小提琴(http://jsfiddle.net/FwBNE/)做你想做的事情(无论如何,在Chrome中)。是否有一个特定的浏览器,你看到这个问题? – pete
为什么要禁止任何人对你要求上述??? – techfoobar
它会对我说“缺乏搜索努力” –
@RolandFeghaly:如果你正确地发布了一个问题,做你的研究并展示一些代码(希望用小提琴),你的问题总是会受到欢迎 –