Я видел различные формы этой проблемы, но ничто действительно не помогло мне решить поведение частично прилипающей боковой панели / столбца Bootstrap.Позвольте мне начать с самой проблемы.
В верхней части моей страницы есть большое изображение.Из-за сложности страницы я использую сетку столбцов Bootstrap.Изображение охватывает, скажем, 10 столбцов, и я оставил 2, принадлежащие одному и тому же ряду, на левой стороне для хранения боковой панели.Это также позволяет мне выровнять боковую панель по вертикали рядом с изображением.
Теперь боковая панель, которая сейчас является столбцом Bootstrap, должна оставаться липкой и должна оставаться вертикально выровненной по окну просмотра после прохождения полосы прокрутки.Вы можете увидеть в fiddle , что он как бы «скачет» вместо плавного перехода.
Другая проблема заключается в том, что липкий элемент / столбец должен оставаться липким, пока его родитель /Контейнер виден.Это означает, что он должен переходить / быть относительно конца этого контейнера.Прямо сейчас мне удалось сохранить его только до конца страницы.Он должен остановиться над красной линией (изображенной на скрипке).
Вот моя логика jQuery.
$(document).ready(function(){
$(window).scroll(function(){
var elem = $("#refScroller").offset().top - ($("#refScroller").height() / 2);
var windowvalue = $(window).scrollTop();
if (elem <= windowvalue) {
$("#wannabeSticky").addClass("sticky");
}
else {
$("#wannabeSticky").removeClass("sticky");
}
});
});
Я был бы очень признателен за некоторые идеи и подсказки, поскольку это беспокоило меня.мне на два дня.Я хотел бы сохранить структуру сетки Bootstrap, если это возможно, но не стесняйтесь давать любые предложения, даже тем, кто изображает боковую панель как чистый абсолютный div, до тех пор, пока работает наклейка.
Заранее спасибо!
РЕДАКТИРОВАТЬ: я знаю, что уже есть подобная проблема здесь , но, похоже, я не могу заставить логику JS работать для моего случая.