我正在嘗試創建一個導航欄,當用戶向下滾動時向上和向下滑動屏幕,然後當用戶停止滾動/向上滾動時向下滾動。下面是我的腳本的片段和的jsfiddle:jQuery和Safari的一個問題
$(document).ready(function() {
var position = $(window).scrollTop();
$(window).scroll(function() {
var scroll = $(window).scrollTop();
if (scroll > position) {
$('.nav').addClass('active');
} else {
$('.nav').removeClass('active');
}
position = scroll;
});
});
https://jsfiddle.net/z2uc89sL/
再加上我的CSS這適用於所有我在測試它除了Safari瀏覽器(我運行9.0版瀏覽器的罰款。 2在Mac上)。正在發生的問題是,當您點擊頁面頂部並且沒有更多空間可以向上滾動時,導航會通過重新滑動而再次隱藏(就好像用戶實際上再次向下滾動,而不是碰到頂端的頁面)。相反的情況也發生在頁面的底部。
如果你看看Safari中的小提琴,你會看到我正在談論的問題。如果你在任何其他瀏覽器中看小提琴,你會看到我想要實現的。
謝謝你。你拯救了我的生命:) – danMad
@DanMad非常高興聽到這個消息。讓我知道,如果你需要任何進一步的幫助來理解上述答案,甚至任何其他事情!乾杯:) – Danish