jQuery Lightbox или эквивалент с массивом изображений

Я пытаюсь реализовать галерею в стиле Lightbox, в которой нажатие на текстовую ссылку запускает слайд-шоу изображений, которые загружаются из массива, а не из встроенного содержимого на странице. Во всех примерах, которые я могу найти, используется группа встроенных изображений, которые каким-то образом связаны (например, с использованием тега rel или класса). Я хочу определить свои изображения, используя их пути в массиве Javascript.

Кто-нибудь знает решение или есть какие-либо указатели? ТИА.


person da5id    schedule 03.08.2009    source источник


Ответы (2)


Следующее работает с примером, который вы можете скачать с сайта плагина.

Демонстрация здесь

$(function() {
        $('#testLink').click( dynamicLightBoxinit );
    });

    function dynamicLightBoxinit(){
        images = ["photos/image1.jpg", "photos/image2.jpg","photos/image3.jpg","photos/image4.jpg","photos/image5.jpg"];
        var imageBuilder='';
        for (var i = 0; i  < images.length; i++)  {

            imageBuilder += '<a href="'+images[i]+'"><img src="';
            imageBuilder += images[i];
            imageBuilder += '" \></a>';
          }

          var lb = $(imageBuilder);
          lb.lightBox();
          lb.filter('a:first').click();
        }
person redsquare    schedule 03.08.2009
comment
Спасибо redsquare, ваше решение работает отлично, и это именно то, что я искал. Ваше здоровье :) - person da5id; 04.08.2009

Я точно не знаю, что вам нужно, но это то, что вы ищете?

images = ["path1.jpg", "path2.jpg"];
for (var i = 0; i  < images.length; i++)
  {
    var img = new Image();
    img.src = images[i];
    images[i] = img;
  }

Довольно тупо на месте замена урлов на Image-объекты, но короче писать было.

Ваши изображения будут загружены браузером, когда установлен атрибут src, и могут быть добавлены к любому html-контейнеру с помощью обычных dom-операций.

ХТН.

person falstro    schedule 03.08.2009