[英]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.