【发布时间】:2013-07-17 06:20:03
【问题描述】:
这是我的html:
<ul id="dmenu">
<li><a href="#">menu item one</a></li>
<li><a href="#">menu item two</a>
<ul class="displayNone">
<li><a href="#">menu item one</a>
</ul>
</li>
</ul>
当用户单击其中一个 a 标签时,我希望我的代码检查父 li 标签中是否有任何 ul 标签。如果有,那么我想阻止 a 标签的默认操作并滑动切换子 ul 元素
我的 jquery 自动取款机:
$('#dmenu > a').click(function(e) {
if (this.parent().has('ul')) {
e.preventDefault();
$(this).children().slideToggle();
}
});
【问题讨论】:
-
那么问题出在哪里?
-
它不起作用 - 代码什么也没做,我不知道为什么
-
这是否包含在 document.ready 中?
-
是的,什么都没有发生
-
将您的选择器更改为
#dmenu > li a。假设#dmenu是ul元素,那么您的原始选择器不会做任何事情,因为a绝不是#dmenu的直接 子元素。
标签: javascript jquery html user-interface