我想在div中选择锚标记,但我想从子ul标记中选择,因为我正在尝试创建一个下拉列表。
我的HTML代码如下:
<div>
<a href='#'>Dropper 1</a>
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
<a href='#'>Dropper 2</a>
<ul>
<li>Item 4</li>
<li>Item 5</li>
<li>Item 6</li>
</ul>
</div>
我的JQuery代码如下:
$(document).ready(function(){
$('ul').each(function(){
$(this).parent().click(function(){ $('ul',this).show("1000"); });
$(this).parent().mouseleave(function(){ $('ul',this).hide("1000"); });
});
})
UL代码的CSS如下:
ul {display:none;}
现在已隐藏UL,我想使用UL选择锚点。上面的函数现在正在工作,因为它正在选择DIV作为父级,并且在单击div时会显示ul,但是因为div的大小与锚标记的大小相同所以如果有人点击div就像点击它一样作为锚点的子项,当点击锚点时,浏览器的默认行为是滚动到顶部,因为 href ='#'。我想通过使用 event.preventDefault();
选择该锚来停止滚动告诉我通过UL
选择锚标记的方法答案 0 :(得分:0)
我认为这就是你想要的:
$('ul').each(function() {
$(this).prev('a').click(function(e) {
e.preventDefault();
$(this).next().show("1000");
});
$(this).mouseout(function() {
$(this).hide("1000");
});
});