@NotBad_Bugfix

Как правильно рассчитать высоту parallax sly.js?

Ситуация следующая, плагин слай - https://github.com/darsain/sly , не верно расчитывает высоту и даже если я не буду использовать выражения деления и умножения, то прокрутка будет на 550px больше положенного, а если я использую эти выражения (для параллакс эффекта), то в разных разрешениях высота разная, в некоторых случаях до конца не прокручивается, а в некоторых перебор. Собственно сабж.
;$(function() {

	'use strict';

	var parallax = new Sly($(document).height()/1.9, {
	    scrollSource: document, 
	    scrollBy: 100, 
	    dragSource: document,
	    mouseDragging: 1,
	    touchDragging: 1,
	    releaseSwing: 1,

	    scrollBar: '#scrollbar',

	    speed: 1200,
	    easing: 'easeOutExpo'
	});

	var $content = $('#works');
	var $about = $("#about");
	var $clients = $("#clients");

	function render(move) {
	    this.pos.start;
	    this.pos.cur;
	    this.pos.dest;
	    this.pos.end;
	}

	parallax.on('load move', render);


	parallax.on({
		load: function () {
			$("#logo #logo_front").css({"background-position-y" : "-20px" });
			$("body").css({"background-position-y" : "-50px" });
		},
		move: function () {
			$content.css("top", -this.pos.cur*1.4);
			$about.css("top", -this.pos.cur*1.4);
			$clients.css("top", -this.pos.cur*1.4);
			$("#footer").css("top", -this.pos.cur*1.4);
			$("#slider_work").css("top", -this.pos.cur);
			$("#logo #logo_front").css({"background-position-y" : -this.pos.cur/30*4-20 });
			$("body").css({"background-position-y" : this.pos.cur/20 -50 });
			if(this.pos.cur >= 800) {
				$("#logo #logo_front").css({"background-position-y" : -800/30*4-20 });
			}
		}
	});


	parallax.init();

	$(window).resize(function(){
		parallax.reload();
	});

});
  • Вопрос задан
  • 2787 просмотров
Пригласить эксперта
Ответы на вопрос 1
DeLaVega
@DeLaVega
Верстаю, фронтэндю =)
У вас в целом какой то ад в js, и в window.resize что-то не наблюдается перерасчёт высоты вашего блока.
И лучше вылейте куда нить, где можно пощупать, так сложно что-то сказать.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы