2017-01-26 5 views
0

У меня есть навигатор, который прокручивает окно и останавливается над нижним колонтитулом, который работает очень хорошо. За исключением случаев, когда вы перезагружаете страницу или переходите к ней с помощью кнопки «Назад» после прокрутки вниз, где nav должен следовать за вами. затем он показывает перекрытие нижнего колонтитула, пока вы не прокрутите список. Как я могу получить nav для прикрепления стиля top:###px; к nav при первой загрузке страницы?Плавающий nav excinging bounds на странице reload

здесь существующий код:

define(['jquery', 'bootstrap'], function ($) { 
    function PageNavAffix(options) { 
    this.$element = $('#page-nav'); 
    this.$container = $('#page-nav-container'); 
    } 
    PageNavAffix.prototype.bindEvents = function() { 
    $(window).on('resize', this.configureBounds.bind(this)) .trigger('resize'); 
    return this; 
    }; 
    PageNavAffix.prototype.configureBounds = function() { 
    var module = this; 
    var vgapBase = 6; 
    this.$element.affix({ 
     offset: { 
     top: module.$container.offset().top + parseInt(module.$container.css('padding-top')) - vgapBase, 
     bottom: function() { 
        var pageHeight = $('html').outerHeight(); 
        var offset = module.$container.offset().top; 
        var containerOuterHeight = module.$container.outerHeight(); 
        var containerPadding = parseInt(module.$container.css('padding-bottom')); 
        var containerHeight = containerOuterHeight - containerPadding; 
        this.bottom = pageHeight - offset - containerHeight; 
       } 
      } 
     }); 
    }; 
    return PageNavAffix; 
}); 
+0

может использовать рабочий пример здесь –

+0

http://gmpmulti.staging.wpengine.com/help/ – mrben522

ответ

0

После сна на ней, я нашел несколько решений/обходных путей. Я добавил это к функции bindEvents:

$(window) 
    .on('beforeunload', function() { 
     $(window).scrollTop(0); 
    }); 

ИЛИ Я мог бы добавить вместо этого:

$(window) 
    .on('load', function() { 
     $(window).scrollTop($(window).scrollTop()-1); 
    }); 
+0

Если у кого-то есть более чистое решение, я соглашусь на это вместо своего, но это решает проблему в том, что касается клиента. – mrben522

Смежные вопросы