From 172bc80ec162e746d61b6667be8c65ca9d4fc580 Mon Sep 17 00:00:00 2001 From: Faldrian Date: Sun, 3 Aug 2014 15:32:57 +0200 Subject: [PATCH] thumbnails scroll to currently selected image smoothly --- app/assets/javascripts/widgets/lightbox.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/app/assets/javascripts/widgets/lightbox.js b/app/assets/javascripts/widgets/lightbox.js index f75ddf92a..f7f8d1f15 100644 --- a/app/assets/javascripts/widgets/lightbox.js +++ b/app/assets/javascripts/widgets/lightbox.js @@ -60,13 +60,13 @@ jQuery.fn.center = (function() { self.scrollleft.click(function(evt){ evt.preventDefault(); evt.stopPropagation(); - self.navigation.scrollLeft(self.navigation.scrollLeft() - (self.window.width() - 150)); + self.navigation.animate({scrollLeft: (self.navigation.scrollLeft() - (self.window.width() - 150))}, 200, 'swing'); }); self.scrollright.click(function(evt){ evt.preventDefault(); evt.stopPropagation(); - self.navigation.scrollLeft(self.navigation.scrollLeft() + (self.window.width() - 150)); + self.navigation.animate({scrollLeft: (self.navigation.scrollLeft() + (self.window.width() - 150))}, 200, 'swing'); }); self.body.keydown(function(evt) { @@ -136,6 +136,8 @@ jQuery.fn.center = (function() { self .selectImage(imageThumb) .revealLightbox(); + + self.scrollToThumbnail(imageThumb); }; this.imagesetImageClicked = function(evt) { @@ -145,11 +147,17 @@ jQuery.fn.center = (function() { self.selectImage($(this)); }; + this.scrollToThumbnail = function(imageThumb) { + self.navigation.animate({scrollLeft: (self.navigation.scrollLeft() + imageThumb.offset().left +35 - (self.window.width() / 2))}, 200, 'swing'); + } + this.selectImage = function(imageThumb) { $(".selected", self.imageset).removeClass("selected"); imageThumb.addClass("selected"); self.image.attr("src", imageThumb.attr("data-full-photo")); + self.scrollToThumbnail(imageThumb); + return self; };