2015-10-11 3 views

ответ

0

Как я ответил здесь, Start the thumbnails from the left of the slideshow instead of the middle, это просто. Плагин fotorama использует свойство css3 transform для выравнивания миниатюр под основным изображением. просто вычислите ширину родительской ширины и ширину контейнера для детей, используя jQuery, и если родительский объект больше, чем дочерний контейнер, сделайте преобразование по оси X, чтобы сдвинуть все миниатюры влево.

EDIT: Я сделал правку, что при нажатии на кнопку на стрелах или эскизов, он также делает исправление выравнивание!

$(document).ready(function() { 
    var pw = $('.fotorama__nav--thumbs').innerWidth(); 
    var cw = $('.fotorama__nav__shaft').innerWidth(); 
    var offset = pw -cw; 
    var negOffset = (-1 * offset)/2; 
    var totalOffset = negOffset + 'px'; 
    if (pw > cw) { 
     $('.fotorama__nav__shaft').css('transform', 'translate3d(' + totalOffset + ', 0, 0)'); 
    } 
    $('.fotorama__nav__frame--thumb, .fotorama__arr, .fotorama__stage__frame, .fotorama__img, .fotorama__stage__shaft').click(function() { 
     if (pw > cw) { 
     $('.fotorama__nav__shaft').css('transform', 'translate3d(' + totalOffset + ', 0, 0)'); 
     } 
    }); 
    }); 
+0

Спасибо @ Farzad-уг Расчет отлично работает на на съемочной площадке и не сдвигают эскизы влево при загрузке страницы. Но когда я нажимаю на джойстик, чтобы перемещаться между эскизами или стрелками навигации, вся эскиз ('.fotorama__nav__shaft') снова перемещается в центр. Похоже, что преобразование сбрасывается на 'translate3d (0px, 0px, 0px)', когда я нажимаю на него. –

+0

Спасибо! Это решает проблему с кликом. Мне жаль беспокоить вас снова, но теперь, если окно будет изменено, миниатюры снова будут сброшены и вернутся в середину. Это из-за меняющейся ширины родительского контейнера? Рассчитывается ли fotorama каждый раз при изменении ширины? Как это можно включить в ваш код? Я пробовал использовать '.resize', но не повезло –

+0

Пока я буду работать над проблемой изменения размера, примите мой ответ. –

0

Просто добавьте в CSS этот код:

.fotorama__nav { 
    text-align: left or right !important; 
} 
Смежные вопросы