2 回答

TA貢獻1831條經驗 獲得超4個贊
您可以嘗試使用僅在特定滾動值應用轉換的條件來包裝您的轉換:
var sectionHeight = $('.section').height();
if(document.documentElement.scrollTop>0 && document.documentElement.scrollTop<sectionHeight){
//apply transformation here
}
else if(document.documentElement.scrollTop>sectionHeight && document.documentElement.scrollTop<(sectionHeight*2)){
//apply transformation here
}
...
//Number of if conditions = number of sections you have

TA貢獻1858條經驗 獲得超8個贊
我做了一個小提琴來了解你在哪里。我已經將 into 包裹起來#section1并#section1_container應用于overflow: hidden它以限制動畫的位置。
網頁格式
<div id="section1_container">
<div id="section1">
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Doloremque sapiente dolor ex magnam eveniet! Ipsum officia quidem possimus iste expedita temporibus nobis praesentiumconsectetur adipisicing elit. Doloremque sapiente dolor ex magnam eveniet! Ipsu
</div>
</div>
CSS
#section1_container{
overflow: hidden;
}
我認為您還想在該部分可見的地方開始動畫。
所以你有$("#section1_container").offset().top它會給你從文檔頂部的偏移量,如果這個屬性高于你的scroll = jQuery(this).scrollTop();那么你就可以開始動畫了。你可以阻止它$("#section1_container").height()。
添加回答
舉報