我被我的下拉菜单困住了。 当我点击导航按钮" clicker"时,我希望它打开。然后当我点击" clicker"试。
我希望它仅在单击图像时显示/隐藏。当我点击隐藏的div时,它将保持打开状态。
但那不起作用。我不知道为什么。试了这么多东西。任何的想法? (这里的总菜鸟)。
HTML: (点击"#clicker" Image = Toggle Dropdown;" #downdown-inside" = hidden div;
<div class="header_content">
<div class="navbar">
<div id="dropdown-menu">
<img id="clicker" src="http://porschedvd.de/bluptest/typo3/fileadmin/stromer/template/pix/menu_btn.jpg" alt="">
<ul id="dropdown-inside">
JQuery的:
$j('#clicker').click(function() {
$j('#clicker').not(this).children('ul').slideUp("slow");
$j(this).children('ul').slideToggle("slow");
});
$j('#clicker').blur(function() {
$j('#dropdown-inside').hide('slow', function() {
});
});
在这里小提琴:http://jsfiddle.net/377G6/2/
答案 0 :(得分:4)
我已阅读您的代码并尝试运行它。 现在你有两点需要解决:
您的选择器$j(this).children(ul)
无法找到该列表。
列表ul
是#clicker
的兄弟元素,因此您可以使用方法siblings('ul')
或next()
来选择列表,但不能children()
}
事件&#39;模糊&#39;现在无法触发。
通常情况下,事件blur
只能在input
或textarea
上触发,因此,如果您想在blur
或{{<img>
上触发<div>
1}},您可以为其设置tabindex="-1"
之类的属性。
正如我尝试的那样,它在修复后成功运行。
以下是链接:http://jsfiddle.net/edisonator/kfcB9/
谢谢, 爱迪生