2015-08-11 4 views
7

У меня есть div, который я хотел бы придерживать в нижней части окна браузера (фактическое окно браузера не на странице). Div должен оставаться в нижней части окна браузера, пока пользователь прокручивается.Удерживайте div в нижней части окна браузера

Прямо сейчас, div будет придерживаться нижней части окна на первом начальном прокрутке, но он не будет переставляться каждый раз, когда появится новый свиток. Вот что у меня есть для моего JQuery:

$(window).scroll(function() { 
    var bHeight = $(window).height(); 
    $('.test').css({ 
     top: bHeight - 77 + 'px' 
    }); 
}); 

Вот jsfiddle http://jsfiddle.net/3ecx7zp9/1/

+2

Вы не должны использовать JQuery или JavaScript, за то, что CSS может обрабатывать по умолчанию. –

ответ

24

Это может быть просто сделать в CSS. Удалить все ваши JavaScript, и выполните следующие действия:

position: fixed; 
bottom: 77px; 

Fiddle

+2

Ничего себе, этот недосмотр неловко! Спасибо за помощь ха-ха. – user715564

+0

иногда мы слишком увлечены использованием передовых техник, которые мы забываем, что есть базовый уже. –

+0

@ user715564 рассмотреть вопрос о выборе ответа в качестве лучшего ответа, если вы найдете его, в противном случае подробно остановите свою проблему. –

4

считается ли вы с использованием фиксированного положения DIV? установить position: fixed и bottom: 77px

Однако, если вы должны использовать решение JQuery изменить код этой

$(window).scroll(function() { 
    var bHeight = $(window).height(); 
    var offset = $(window).scrollTop(); 
    $('.test').css({ 
     top: bHeight + offset - 77 + 'px' 
    }); 
}); 

http://jsfiddle.net/3ecx7zp9/6/

, который принимает во внимание то, как далеко вы прокрутили и установить положение DIV соответственно

1

здесь вы идете:

<div class="test" style="position: fixed; width: 100%; height: 77px; background-color: #333;left:0;bottom:0"></div>

1

Проверьте, если ниже ссылка будет работать с вами.

Fiddle

#footer { 
position: fixed; 
bottom: 0; 
height: 77px; 
width: 100%; 
background-color: #333; 
} 
0

Это именно то, что позиция: фиксированная был разработан для:

#footer { 
    position: fixed; 
    bottom: 0; 
    width: 100%; 
} 

Вот скрипку: http://jsfiddle.net/uw8f9/

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