簡體   English   中英

如何獲取固定元素的“原始” offset()。top?

[英]How to get “original” offset().top of a fixed element?

我正在創建一個StickyNav,當窗口滾動到達stickyNav的offset()。top(此處沒有新內容)時應該修復此問題。

我在頁面加載時緩存了StickyNav的offset()。top,但是此變量在移動設備和台式機上並不相同,因此,當我調整屏幕大小時,此StickyNav會在不同的位置“固定”(取決於我是否首先加載頁面)移動或台式機)

我目前的解決方法是通過執行以下操作來更新窗口調整大小時的offset()。top變量:

getOffSetTop : function(){
    var stickyNavBar = $(document).find('.stickynav');
    var offSetTop = stickyNavBar.offset().top;
    if(stickyNavBar.hasClass('fixed')){
        stickyNavBar.removeClass('fixed');
        offSetTop = $('.stickynav').offset().top;
        stickyNavBar.me.addClass('fixed');
    }
    return offSetTop;
}

哪個可行,但我不知道是否有更好的方法來實現?

也許是簡化版:

if(typeof($(".stickyNavBar.fixed")) != undefined)

return $("stickyNavBar.fixed").offset().top

else

return 0:

很抱歉在手機上格式不佳。

暫無
暫無

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

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