簡體   English   中英

Skrollr:當滾動位置在最后一個關鍵幀之后時傳遞一個函數

[英]Skrollr: pass a function when the scroll position is after the last keyframe

Skrollr是一個很棒的插件,有很多選項,但是我真的不明白當滾動位置在最后一個關鍵幀之后時是否有某種方法可以傳遞函數。 例如,看看這個小提琴

當您滾動頂部的100個像素時, scrollable-between類將在scrollable-after更改。 我想以類似的方式傳遞一個函數(例如:當滾動位置在最后一個關鍵幀之后進行填充時)。

您將如何實現?

您將要使用render選項。 類似於以下內容:

var box = $('#box'),
    boxDone = false;
skrollr.init({
    forceHeight: false,
    smoothScrolling: false,
    render: function() {
        if ( box.hasClass('skrollable-after') ) {
            if ( ! boxDone ) {
                boxDone = true;
               // do stuff
            }
        } else if ( boxDone ) {
            boxDone = false;
        }
    }
});

您不一定必須具有boxDone變量,但是在發生這種情況時,它可以防止它多次運行。 您也可以通過不重置該變量來使其僅發生一次。

小提琴

我可能還應該提到,您將要確保在那里做的所有事情都應該運行得非常快,否則您就有可能放慢一切移動的速度。 您也許可以使用setTimeout來解決此問題,但是我還沒有對此進行任何測試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM