Слайд-шоу в Универсальном каталоге
Реализация слайд-шоу в Универсальном каталоге
т.е. если картинка превышает размер монитора (или области окна браузера) то она вписывается в окно
если равна или меньше, то выводится как есть
картинка одна и та же
но тут изменил размер окна
Я так понял вы намекаете на то что нельзя поменять размер?
вообще то смысл всех таких лайтбоксов в том что бы вписать картинку в окно .....
т.е. если картинка превышает размер монитора (или области окна браузера) то она вписывается в окно
если равна или меньше, то выводится как есть
картинка одна и та же
но тут изменил размер окна
Видел на одном сайте при просмотре слайда в правом верхнем угле есть ссылочка или кнопочка для увеличения фото, в лайт боксе такая есть?
а размер, размер изменяется автоматически js скриптом
не, кнопочек не видел
а размер, размер изменяется автоматически js скриптом
Получается вы утверждаете что размер поменять нельзя?
не
давай так
нарисуй скриншот, даже два
один то что у тебя есть
второй что ты хочешь получить изменением размера
а то, наверно моя твоя непонима
чухае потилицю
не
давай так
нарисуй скриншот, даже два
один то что у тебя есть
второй что ты хочешь получить изменением размера
а то, наверно моя твоя непонима
Вот скрин, думаю сейчас понятнее будет) требуется увеличение фото которое окрывается по клику.
Вот Здесь открывается по стандарту, как вы и говорили фото формируется автоматом
А вот Здесь настроен нужный размер, конечно оч коряво да таких больших размеров не нужно. Здесь я сам подстрою как надо, вернее как нужно владельцам. Вот тока где эти размеры задавать я так и не нашёл
Откуда такая информация, что он там настроен? Насколько я вижу там рисунки действительно большого размера.А вот Здесь настроен нужный размер, конечно оч коряво да таких больших размеров не нужно
Откуда такая информация, что он там настроен? Насколько я вижу там рисунки действительно большого размера.А вот Здесь настроен нужный размер, конечно оч коряво да таких больших размеров не нужно
Ну я так полагаю потому что делал это человек, и каким образом он это сделал я найти не могу весь код уже пересмотрел но наводки не нашёл (( Рисунки в оригинале одинаковые что на основном домене что на поддомене.
1 рисунок без увелечения
traffs, отключите выполнение javascript в браузере, чтоб он вам не мешал и просто откройте тот рисунок, который "делал человек". Какие он имеет размеры?
width: 455px;
height: 607px;
2 рисунок с увеличение который какраз слайд и показывает
width: 845px;
height: 1126px;
Он делал не один рисунок ) он просто напросто где-то задал размеры и теперь эти окна открываются по заданному размеру
traffs, да не задавал никто и нигде никаких размеров. Просто в случае номер 1 ссылка (маленький рисунок) по которой открывается окно ведет на тот же самый маленький рисунок, а во втором случае эта ссылка указывает на большой рисунок.
Получается Картинка с поддомена в слайде открывается в авто размере под браузер, а картинка с домена открывается в оригинале, ну дак как заставить открывать оригинал на поддомене не пойму.Лайтбокс на поддомене по сути открывает оригинал но обрезает его до нужных размеров в зависимости от браузера и разрешения. Возможно надо просто отключить автоформирование рисунка под браузер?
строки
с 953 по 1060 отвечают за получение размера монитора если браузер открыт на полную
или размера окна браузера если не на полную
и исходя из этих размеров производится вычисления для того что бы вписать изображение в окно, если размеры изображения превышают размер окна или вывести изображение полностью если оно меньше чем окно
resizeBoxes: function ( type ) { // Resize the boxes // Used on transition or window resize // Resize Overlay if ( type !== 'transition' ) { // We don't care for transition var $body = $(this.ie6 ? document.body : document); $('#lightbox-overlay').css({ width: $body.width(), height: $body.height() }); delete $body; } // We no longer care if we are general if ( type === 'general' ) { // Done return true; } // Get image var image = this.images.active(); if ( !image || !image.width || !this.visible ) { // No image or no visible lightbox, so we don't care return false; } // Resize image box // i:image, w:window, b:box, c:current, n:new, d:difference // Get image dimensions var iWidth = image.width; var iHeight = image.height; // Get window dimensions var wWidth = $(window).width(); var wHeight = $(window).height(); // Check if we are in size // Lightbox can take up 4/5 of size var resizeRatio; while ( iWidth > maxWidth || iHeight > maxHeight ) { // We need to resize if ( iWidth > maxWidth ) { // Resize width, then height proportionally resizeRatio = maxWidth/iWidth; iWidth = maxWidth; } if ( iHeight > maxHeight ) { // Resize height, then width proportionally resizeRatio = maxHeight/iHeight; iHeight = maxHeight; } } // Get current width and height var cWidth = $('#lightbox-imageBox').width(); var cHeight = $('#lightbox-imageBox').height(); // Get the width and height of the selected image plus the padding // padding*2 for both sides (left+right || top+bottom) var nWidth = (iWidth + (this.padding * 2)); var nHeight = (iHeight + (this.padding * 2)); // Diferences var dWidth = cWidth - nWidth; var dHeight = cHeight - nHeight; // Set the overlay buttons height and the infobox width // Other dimensions specified by CSS $('#lightbox-nav-btnPrev,#lightbox-nav-btnNext').css('height', nHeight); $('#lightbox-infoBox').css('width', nWidth); // Handle final action if ( type === 'transition' ) { // We are transition // Do we need to wait? (just a nice effect to counter the other if ( dWidth === 0 && dHeight === 0 ) { // We are the same size this.pause(this.speed/3); this.showImage(null, 3); } else { // We are not the same size // Animate $('#lightbox-image').width(iWidth).height(iHeight); $('#lightbox-imageBox').animate({width: nWidth, height: nHeight}, this.speed, function ( ) { $.Lightbox.showImage(null, 3); } ); this.repositionBoxes({'nHeight':nHeight, 'speed':this.speed}); } } else { // We are a resize // Animate Lightbox $('#lightbox-image').animate({width:iWidth, height:iHeight}, this.speed); $('#lightbox-imageBox').animate({width: nWidth, height: nHeight}, this.speed); this.repositionBoxes({'nHeight':nHeight, 'speed':this.speed}); } // Done return true; },
но одним местом чувствую что ничего хорошего из этого не выйдет…
например почти все изображения имеют одинаковый размер а вот cg3843k или t8402s размер больше
потому и меняет лайтбокс свои размеры подстраиваясь под него
лучшим вариантом думаю будет привести все изображения товаров к единому стандарту высоты ширины в фотошопе чем городить огород в лайтбоксе