我试图在此Demo上使用jQuery和简单CSS创建下拉菜单列表,滑动效果很好,但我不知道为什么单击功能也会刷新页面(当您查看
这是我的代码:
<style>
.musthidden{display:none;}
</style>
<ul>
<li><a href="#">One</a></li>
<li id="two"><a href="#">Two</a>
<ul class="musthidden">
<li><a href="#">Two _ 1</a></li>
<li><a href="#">Two _ 2</a></li>
<li><a href="#">Two _ 3</a></li>
<li><a href="#">Two _ 4</a></li>
</ul>
</li>
<li><a href="#">Three</a></li>
<li><a href="#">Four</a></li>
</ul>
<script>
$("#two").on("click",function(){
$(".musthidden").slideToggle();
});
</script>
您能告诉我为什么会这样吗?
最佳答案
点击功能应为:
$("#two").on("click",function(e){
e.preventDefault();
$(".musthidden").slideToggle();
});
e.preventDefault()
说:不要执行绑定到该事件的任何其他功能,请在点击该功能后停止。因此,以后不应该执行任何操作。e
是通过click
事件发送的事件对象,大多数其他事件也具有e
无需任何刷新即可查看更新的fiddle。