Я пытаюсь анимировать группу кнопок из относительного положения в фиксированное положение при каждой прокрутке.
HTML
<div class="menu">
<button class="button"></button>
<button class="button"></button>
</div>
CSS
.button {
display: inline-block;
position: relative;
margin: 3px;
height: 56px;
width: 56px;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
transition: all 0.5s ease;
}
.grouped {
z-index: 1000;
position: fixed;
top: 31px;
right: 20px;
}
JS
var scrollFlag = false;
$(window).scroll(function() {
var menu = $(".menu"),
scrollTop = window.scrollTop;
if(menu.offset().top <= (scrollTop + 50)) {
if(scrollFlag == false) {
$(".menu button").each(function() {
var button = $(this);
button.addClass("grouped");
});
scrollFlag = true;
}
} else {
$("#intro div.menu button").each(function() {
$(this).removeClass("grouped");
});
scrollFlag = false;
}
});
Теперь кнопки просто переходят в фиксированное положение. Я понимаю, что это потому, что они не установили верхние / правые значения для начала анимации.
Я попытался преодолеть это, получив смещения кнопок и установив их как верхнее и левое значения, но это тоже не сработало.
Любые идеи?