jquery - 关于 jQuery 和点击功能的问题

标签 jquery css

我正在尝试使用 jQuery 和简单的 CSS 创建下拉菜单列表 Demo滑动工作正常,但我不知道为什么在单击功能时页面也会刷新(当您查看 enter image description here 时,这一点更为明显) 这是我的代码:

<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() 表示:不执行绑定(bind)到此事件的任何其他函数,在命中此函数后停止。所以它不应该在之后做任何事情。

e 是通过 click 事件发送的事件对象,大多数其他事件也有 e

查看更新 fiddle没有任何刷新。

关于jquery - 关于 jQuery 和点击功能的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23070338/

相关文章:

css - 在 Vue 中有条件地使用 css 类

html - 如何在 AngularJS 中使用图像作为背景?

javascript - 缓存:myscript-1125.js vs myscript.js?1125

html - SVG:多边形内的圆: overflow hidden

jquery - 从 bootstrap daterangepicker 计算天数

javascript - 如何让仅使用 jQuery 的 DIV 垂直调整大小 - 没有插件?

html - 需要父 <div/> 使用 CSS 覆盖子 <div/> 的一部分

javascript - HTML将一个html文件中的一个div的内容加载到另一个html文件中

javascript - 如何使用 AJAX 加载 SVG 文件内容?

javascript - 从按钮列表中删除某些文本值