@viktorross

Как остановить fixed на определенном моменте?

Здравствуйте, есть такой код

<div id="fixblock">
test
</div>

<script>
function getTopOffset(e) { 
	var y = 0;
	do { y += e.offsetTop; } while (e = e.offsetParent);
	return y;
}
var block = document.getElementById('fixblock'); /* fixblock - значение атрибута id блока */
if ( null != block ) {
	var topPos = getTopOffset( block );
	window.onscroll = function() {
		var newcss = (topPos < window.pageYOffset) ? 
			'top:20px; position: fixed;' : 'position:static;';
		block.setAttribute( 'style', newcss );
	}
}
</script>


он слева просто фиксирует блок, как остановить его на определенной метке? точнее зафиксировать его нижнюю часть, потому что он прокручивается до самого низа и залазит на все элементы
допустим по достижению
<div id="stop_block_fixed"></div>
  • Вопрос задан
  • 495 просмотров
Пригласить эксперта
Ответы на вопрос 1
Veterinar
@Veterinar
Кратко о себе
Попробуйте position: sticky и обойтись совсем без js.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы