Показать сообщение отдельно
  #1 (permalink)  
Старый 09.03.2019, 12:09
Аспирант
Отправить личное сообщение для alex-romanov Посмотреть профиль Найти все сообщения от alex-romanov
 
Регистрация: 02.02.2019
Сообщений: 67

Фиксирование flex-контейнеров
У меня есть <div> -контейнеры, вверху и внизу.

Я пытался зафиксировать верхний

$(window).scroll(function() {
                $(selector).css('top', $(document).scrollTop);
            });



этот код не работает.

/*фиксирование верхнего информационного блока;
        *
        * outerWidth() - Возвращает ширину элемента,
        * включая правые и левые внутренние отступы, размер рамки.
        * Так же могут быть включены и внешние отступы.
        *
        * $(window) - получаем объект  Window, который является центром
        * прикладных интерфейсов клиентского JavaScript.
        * Он представляет окно веб-браузера или фрейм,
        * а сослаться на него можно с помощью идентификатора `window`
        *
        * offset() - задает или возвращает значение координат для выбранных элементов
        * (относительно документа).
        * При получении значений координат этот метод возвращает объект
        * с двумя свойствами:
        * -   позиция элемента от верхнего края документа в пикселях (top).
        * -   позиция элемента от левого края документа в пикселях (left).
        * $height_element - высота элемента, который фиксируется
        * .scroll() - привязывает JavaScript обработчик событий
        * "scroll" (срабатывает при прокрутке элементов),
         * или запускает это событие на выбранный элемент.
         * scrollTop() - Получает значение отступа прокрутки сверху для первого элемента в наборе.
        * */
        function fixedSelectorInfoHeaderFlex(selector) {


            var $elemFixed = $(selector);
            var outerWidth = $(selector).outerWidth;

            $(selector).css('width', 'outerWidth');
            var $window = $(window);

            var $offsetElement = $elemFixed.offset();

            var $height_element = $offsetElement.top;

            $window.scroll(function () {

                var $scrollTop = $window.scrollTop;

                if($scrollTop > $height_element ){
                    $elemFixed.addClass("fixed");
                } else {
                    $elemFixed.removeClass("fixed");
                }
            });

            $('.' + 'fixed').css({
               'position': 'fixed',
                'z-index' : '9999',
                'top' : '0'
            });
        }

то же не работает

Можете привести рабочий код ?
Ответить с цитированием