Показать сообщение отдельно
  #6 (permalink)  
Старый 18.05.2017, 10:25
Профессор
Отправить личное сообщение для smart-create Посмотреть профиль Найти все сообщения от smart-create
 
Регистрация: 25.10.2016
Сообщений: 157

Утром встал с более имение ясной головой, переписал немного код, получилось вот так (может быть не совсем правильно с точки зрения красоты кода, но работает адекватно):
$window.on('load', function() {
	var $width = $(document).width() / $(window).width(),
		$coef_widht = $(window).width() / $width,
		$scroll = $(document).scrollLeft();

	$('.scrollX').css({
		width: $coef_widht,
		left: $scroll + $(window).width() / ($(document).width() / $scroll)
	});

	$(document).scroll(function() {
		$scroll = $(document).scrollLeft();
		$('.scrollX').css({
			width: $coef_widht,
			left: $scroll + $(window).width() / ($(document).width() / $scroll)
		});
	})

	$('.scrollX').draggable({
		axis: "x",
		containment: "html",
		drag: function( event, ui ) {
			$scroll = $(document).scrollLeft();
			$(document).scrollLeft(ui.offset.left - (($scroll / $(window).width()) * $coef_widht ));
		 }
	})
});


Я сказал что работает адекватно, но не везде, в мозиле проблемы, на сколько я понял проблемы уже не в моем скрипте, а в самой draggable jquery в мозиле. Сразу после загрузки страницы координата определяются правильно, но стоит проскролить страницу - координата начинает прибавлять к правильному значению сотни а потом и тысячи пикселей...

Есть ли какой то способ обойти эту проблему?
Ответить с цитированием