Тема закрыта
я просто наплевал на animate и всё пошло как надо
<script src="http://code.jquery.com/jquery-1.8.3.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js"></script>
<style>
div .f{
text-align: center;
border: solid 1px lightgreen;
width: 80%;
height: 300px;
margin: 2em;
}
.stick_r{
background-color: #000000;
}
.f_cont{
margin: 400px auto;
width: 80%;
}
</style>
<div class="f_cont">
<div class="f">1</div>
<div class="f">2</div>
<div class="f">3</div>
<div class="f">4</div>
<div class="f">5</div>
<div class="f">6</div>
</div>
<script>
$(function () {
$(window).scroll(function(){
$(".f").each(function () {
var window_top = $(window).scrollTop();
var div_top = $(this).offset().top;
if (window_top > div_top - 400){
$(".f").removeClass('stick_r');
$(this).addClass('stick_r');}
else{
$(this).removeClass('stick_r');};
});
});
});
</script>