jQuery:在哪里插入.animate步骤函数

时间:2014-04-02 20:39:29

标签: javascript jquery fullpage.js

我正在尝试修改名为fullpage.js的库,以便在动画发生时向控制台输出每个动画步骤的值。

这是管理动画的实际功能:

$(scrolledElement).animate(scrollOptions, options.scrollingSpeed, options.easing, function () {
    continuousVerticalFixSectionOrder();
    $.isFunction(options.afterLoad) && !localIsResizing && options.afterLoad.call(this, anchorLink, (sectionIndex + 1));
    setTimeout(function () {
        isMoving = false;
        $.isFunction(callback) && callback.call(this);
    }, scrollDelay);
});

我的步骤功能是这样的:

step: function(){
    var currentTop = $("#superContainer").offset().top;
    console.log( "Left: ", currentTop );
};

我尝试了很多组合,但仍然没有猜到在不破坏代码的情况下把它放在哪里。

很抱歉打扰,我想这是一个菜鸟问题,但我花了4个小时没有结果。 谢谢大家!

阿奇

2 个答案:

答案 0 :(得分:2)

请参阅this section in the documentation

.animate( properties, options )

propertiesoptions是两个对象,steps必须是options上的属性。所以你的代码变成了

$(scrolledElement).animate(
    scrollOptions, 
    {
       duration: options.scrollingSpeed,
       easing: options.easing,
       step: function() {
          // ...
       },
       complete: function () {
          continuousVerticalFixSectionOrder();
          // ...
       }
    }
);

答案 1 :(得分:1)

你可以试试这个:

            $(scrolledElement).animate(
                scrollOptions
            , { step: function(){
                        var currentTop = $("#superContainer").offset().top;
                        console.log( "Left: ", currentTop );
                        }
            }, options.scrollingSpeed, options.easing, function () {
                //fix section order from continuousVertical
                continuousVerticalFixSectionOrder();

                //callback (afterLoad) if the site is not just resizing and readjusting the slides
                $.isFunction(options.afterLoad) && !localIsResizing && options.afterLoad.call(this, anchorLink, (sectionIndex + 1));

                setTimeout(function () {
                    isMoving = false;
                    $.isFunction(callback) && callback.call(this);
                }, scrollDelay);
            });

享受, 洛