首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何制作合适的jQuery滑下菜单?

问如何制作合适的jQuery滑下菜单?
EN

Stack Overflow用户
提问于 2017-05-04 05:09:38
回答 2查看 2K关注 0票数 0

朋友们,大家好!

当我最初单击button(图像)时,我遇到了button菜单的问题,这是<a id="js-cat" class="js-cat"></a> --它可以工作,但是它会再次出现slides down和slides up,这是我没有计划做的。我的目标是让它响应,例如,如果用户要点击button(图像)一次它应该向下滑动,如果用户要点击它两次,它应该再次滑动。

伙计们,我需要你们的帮助。我几乎没有试着去做,但最终我无法使我的代码工作。

以下是我的HTML:

代码语言:javascript
复制
<a id='js-mnu' class='js-mnu'></a>
<a id="js-cat" class="js-cat"></a>

CSS

代码语言:javascript
复制
#js-cat {display:block;display:block;width:35px;height:35px;margin:17px  10px; position: absolute;
right: 0;}
.js-cat {background:url(images/cat.png) center center no-repeat;opacity:0.75;}

和jQuery:

代码语言:javascript
复制
$(document).ready(function(){
  $("#js-cat").click(function(){
       $('ul.catalog').slideDown();
    });
  $("#js-cat").click(function(){
       $('ul.catalog').slideUp();
    });
});
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-05-04 05:44:15

您要绑定两次单击事件。您应该只绑定一次,并检查菜单是隐藏的,还是没有向上或向下滑动的。

​

代码语言:javascript
复制
$(document).ready(function() {
  $("#js-cat").click(function() {
    var isHidden = $(".menu").is(":hidden");
    if (isHidden) {
      $('.menu').slideDown();
    } else {
      $('.menu').slideUp();
    }
  });


});
代码语言:javascript
复制
body {
  margin: 10px;
}

.menu {
  margin: 10px 0;
  background: #abcdef;
  width: 250px;
  padding: 10px;
}

a {
  cursor: pointer;
  border: 1px solid #555;
  background: #fafafa;
  color: #555;
  padding: 10px;
  display: inline-block
}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<a id="js-cat" class="js-cat">Click</a>

<div class="menu">Content: Lorem ipsum</div>

​

票数 1
EN

Stack Overflow用户

发布于 2021-10-17 06:53:24

你就不能用Toggle吗?我认为通过切换,你可以在一个按钮上同时滑下和滑动选项。记得在开始时用read(function())隐藏它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43774322

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档