Как мне пропустить маржу на этом js?

0

Я пытался понять это; как я могу получить.float-div, чтобы не отступать от вершины при прокрутке вниз? Я бы хотел, чтобы это было зафиксировано в верхней части окна во время прокрутки. Если вы заберете.top-entry, он будет работать нормально. Но как я могу исправить это, не удаляя.top-entry?

http://jsfiddle.net/loktar/Kjc6k/2/

var $scrollingDiv = $(".float-div");

$(window).scroll(function(){      
var y = $(this).scrollTop(),
$postEntry = $('.post-entry'),
maxY = $postEntry.offset().top + $postEntry.height(),
scrollHeight = $scrollingDiv.height();
if(y< maxY-scrollHeight ){
$scrollingDiv
.stop()
.animate({"marginTop": ($(window).scrollTop()) + "px"}, "slow" );        
}    
});

2 ответа

0
Лучший ответ

Это мой новый ответ, это скрипка http://jsfiddle.net/Kjc6k/48/ надеюсь, что это то, что вы ищете :)

var $scrollingDiv = $(".float-div");


$(window).scroll(function(){  


var y = $(this).scrollTop(),
    $topEntry = $('.top-entry').height();
if( y > $topEntry){
    $scrollingDiv
    .stop()
    .animate({"margin-top": y + "px"}, "slow" );        
} 
else 
    $scrollingDiv
    .stop()
    .animate({"margin-top": "80px"}, "slow" ); 
});
  • 0
    Это прекрасно работает, но теперь проблема в том, что .float-div прокручивает .sep-запись. Я бы хотел, чтобы он остановился точно над .sep-entry. Потому что если .float-div имеет высоту, например, 600 пикселей, то вы можете прокрутить вниз навсегда! Попробуйте установить высоту 300 пикселей на .float-div и прокрутить вниз. Тогда вы понимаете, о чем я! Спасибо за помощь!
  • 0
    так что вы хотите эту прокрутку .float-div только в .post-entry?
Показать ещё 3 комментария
0

Добавление top:0 в класс float-div легко устранит это.

.float-div {
position: absolute;
background: red;
top: 0;
}

обновленная скрипка: http://jsfiddle.net/7KSTs/

  • 0
    @moe Спасибо за повтор Мо! Первое решение, которое вы сделали, заставило .float-div пойти на вершину, но я бы хотел, чтобы он оставался под «top-entry». Последнее решение, которое у вас есть, отличное, но я бы хотел, чтобы анимация оставалась на свитке. Спасибо!
  • 0
    @ Дэвид Я не очень понимаю, в чем здесь проблема. Вы можете объяснить лучше?
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню