当前位置: 首页 > 知识库问答 >
问题:

菜单按钮动画中已弃用的jQuery.toggle()函数的替代方法

赏成益
2023-03-14

导航菜单按钮动画在我几年前建立的一个网站最近坏了,由于。toggle()函数被弃用,我不知道用什么来替换代码,任何帮助将非常感谢!

这里有一个网站的链接(打开和关闭菜单的动画在右上方):http://blackcurrent.co/#home

当您单击菜单按钮时,符号应该在菜单打开时动画化,然后当您单击同一按钮再次关闭它时,动画应该再次激发,但相反。

下面是jQuery:

<script type="text/javascript">
jQuery(document).ready(function() {
    jQuery('#bespokeButton').toggle(
function(){
    jQuery("#segment1").removeClass('seg1ani2');
    jQuery("#segment1").toggleClass('seg1ani');
    jQuery("#segment2Container").removeClass('seg2Contani2');
    jQuery("#segment2Container").toggleClass('seg2Contani');
    jQuery("#segment3").removeClass('seg3ani2');
    jQuery("#segment3").toggleClass('seg3ani');
},
function(){
    jQuery("#segment1").removeClass('seg1ani');
    jQuery("#segment1").toggleClass('seg1ani2');
    jQuery("#segment2Container").removeClass('seg2Contani');
    jQuery("#segment2Container").toggleClass('seg2Contani2');
    jQuery("#segment3").removeClass('seg3ani');
    jQuery("#segment3").toggleClass('seg3ani2');
});
    });
</script>

我已经将。toggle()函数改为。click(),正如您现在在网站上看到的,菜单按钮会像打开菜单时那样显示动画,但是当您再次单击关闭菜单时,它不会触发反向动画。

你知道我怎样才能让它再这样做吗?

非常感谢,

n

共有1个答案

轩辕修能
2023-03-14

一种简单的方法是在按钮上切换类,并检查类是否存在。

function openMenu(){
    jQuery("#segment1").removeClass('seg1ani2');
    jQuery("#segment1").toggleClass('seg1ani');
    jQuery("#segment2Container").removeClass('seg2Contani2');
    jQuery("#segment2Container").toggleClass('seg2Contani');
    jQuery("#segment3").removeClass('seg3ani2');
    jQuery("#segment3").toggleClass('seg3ani');
}

function closeMenu(){
    jQuery("#segment1").removeClass('seg1ani');
    jQuery("#segment1").toggleClass('seg1ani2');
    jQuery("#segment2Container").removeClass('seg2Contani');
    jQuery("#segment2Container").toggleClass('seg2Contani2');
    jQuery("#segment3").removeClass('seg3ani');
    jQuery("#segment3").toggleClass('seg3ani2');
}


jQuery('#bespokeButton').click(function(e){
    if($(this).hasClass('open')){
      closeMenu()
    }else{
      openMenu()
    }
    $(this).toggleClass('open')
});
 类似资料:
  • 我正在将java应用程序从SpringBoot1.5迁移到SpringBoot2.2.3,这涉及到将Hibernate/Envers升级到5.4.10。最终的 现有代码调用AuditReader#getCurrentRevision(类revisionEntityClass,boolean persist),该类已被弃用,JavaDocs状态为使用RevisionListener,但这与我们需要获

  • 我正在使用一个语音识别应用程序,我想让我的播放/停止按钮在录制时“脉冲”。比如: 我曾试图使一个ScaleAnimation,做按钮增长,但当然,它使增长所有的按钮。 所以这个想法是实现类似的东西,但是只是在实际按钮后面有一个alpha。我想知道在我的按钮后面添加第二个“阿尔法按钮”以使它成长并达到这种效果之前,是否有可能用阿尔法动画或其他东西来做到这一点。

  • pre { white-space: pre-wrap; } 菜单按钮(Menu Button)包含一个按钮(button)和一个菜单(menu)组件,当点击或移动鼠标到按钮上,将显示一个对应的菜单。 为了定义一个菜单按钮(Menu Button),您应该定义一个链接按钮(Link Button)和一个菜单(menu),下面是一个实例:     <div>         <a href="#"

  • pre { white-space: pre-wrap; } jQuery EasyUI 插件 扩展自 $.fn.linkbutton.defaults。通过 $.fn.menubutton.defaults 重写默认的 defaults。 菜单按钮(menubutton)是下拉菜单的一部分。它与链接按钮(linkbutton)及菜单(menu)有关。显示链接按钮(linkbutton),隐藏菜单

  • 我看到GXT菜单只能通过setMenu()方法在CellButtonBase子类的实例上设置。我想显示一个图像,而不是一个按钮,并显示一个菜单时,用户点击该图像。不幸的是,Image不是CellButtonBase的子类,因此我无法将GXT菜单附加到它。那么,如果我必须使用TextButton(这似乎是我在这里的唯一选择),我如何使它看起来像一个图像呢?没有关于这个主题的文档或示例。我问过Senc

  • 本文向大家介绍jQuery EasyUI 菜单与按钮之创建简单的菜单和链接按钮,包括了jQuery EasyUI 菜单与按钮之创建简单的菜单和链接按钮的使用技巧和注意事项,需要的朋友参考一下 菜单(Menu)定义在一些 DIV 标记中,如下所示: 当菜单创建之后是不显示的,调用 'show' 方法显示它或者调用 'hide' 方法隐藏它: 创建链接按钮(Link Button) 通常情况下,使用

  • pre { white-space: pre-wrap; } 菜单(Menu)定义在一些 DIV 标记中,如下所示:     <div id="mm">         <div onclick="javascript:alert('new')">New</div>         <div>             <span>Open</span>             <div>    

  • 使用任何按钮都可以触发一个弹出菜单,只需要把它放置在一个.btn-group中,并提供适当的弹出菜单标记。 插件依赖 按钮弹出菜单需要你的Bootstrap中调用了弹出菜单插件。 内容 单按钮弹出菜单 通过一些基本的标记变化,将一个按钮变成一个弹出菜单。 <!-- Single button --> <div class="btn-group"> <button type="button"