【问题标题】:Jquery toggle only fires onceJquery 切换只触发一次
【发布时间】:2023-04-03 13:22:01
【问题描述】:

我有以下代码用于在页面上滑入/滑出 div(购物篮)。但是,代码只会触发一次(打开一次,关闭一次)。是否需要以某种方式重置切换?

$(document).ready(function(){

    var miniBasketHeight = -$('#minibasket div.outer').height();

    $('#minibasket a.opener').toggle(
        function(e) {
            console.log("open");
            e.preventDefault();
            $(this).parent().find('div.outer').animate({top: 0, opacity: 1 }, 700 );
        },
        function(e) {
            console.log(miniBasketHeight);
            e.preventDefault();
            $(this).parent().find('div.outer').animate({top: miniBasketHeight, opacity: 0 }, 700 );
        }
    );
});

【问题讨论】:

  • 你能发布 HTML 吗?例如,与这里有什么不同? jsfiddle.net/nick_craver/sf3cE
  • 嗨,尼克,HTML 是:
  • 您的购物车是空的

    这是一个小篮子,会显示物品。

    结帐
  • 但我现在已经解决了这个问题: $(document).ready(function(){ $('#minibasket a.opener').click(function(e) { e.preventDefault (); $('div.outer').slideToggle('slow', function() { //动画完成 }); }); });

标签: jquery toggle


【解决方案1】:

现在已经使用 slideToggle() 解决了这个问题

$(document).ready(function(){
    $('#minibasket a.opener').click(function(e) {
        e.preventDefault();
        $('div.outer').slideToggle('slow', function() {
            //Animation complete
        });
    });
});

【讨论】:

    猜你喜欢
    相关资源
    最近更新 更多
    热门标签