今天寫 js 的效果時候,發現 document.body.scrollTop 在 Chrome、Opera 上都可以順利取得瀏覽器的 top 位置,
但是 IE、Firefox 卻完全沒有反應,console.log 出來,捲軸怎麼滾就只是個 0 ,後來問了 Google 大神,
發現有其他的解決辦法。
只要換成 jQuery 的 scrollTop() 就都能正常運作了^^
記錄下來:
工作上用到的一小段 code
// called when the window is scrolled.
window.onscroll = function () {
var scrollTop = $(document).scrollTop();
if (scrollTop > 50) {
$('#nav').addClass('nav-shadow');
} else if (document.body.scrollTop < 51) {
$('#nav').removeClass('nav-shadow');
}
if (scrollTop >= 3600) {
TweenMax.to('.img_m_zip', 0.7, {
opacity: 1,
delay: 0.4,
left: '10%',
ease: 'easeOut',
});
}
if (scrollTop >= 4200) {
TweenMax.to('.img_g_zip', 0.7, {
opacity: 1,
delay: 0.4,
left: '13%',
ease: 'easeOut',
});
}
};
參考資料: jQuery scrollTop() api