1

嗨,我有一个这样的脚本:

jQuery(window).ready(function($) {
    $.fn.prettyPhoto();
    $.get("xml/kategoria1.xml",{},function(xml){
    $('image',xml).each(function(i) {
        lightbox = $(this).find("lightbox").text();
      openLightbox(lightbox)
    });
});
});

function openLightbox(path) {
    $.prettyPhoto.open(path);

它只从 xml 打开一个图像,我想从 xml 打开所有图像,称为灯箱。

这是我的 XML 文件:

<?xml version="1.0" encoding="utf-8"?>
<images>

<image source="Zdjecia/Galeria/Kategoria1/Miniaturki/image1.jpg" lightbox="Zdjecia/Galeria/Kategoria1/Duze/image1.jpg">
<lightbox>Zdjecia/Galeria/Kategoria1/Duze/image1.jpg</lightbox>

</image>

<image source="Zdjecia/Galeria/Kategoria1/Miniaturki/image2.jpg" lightbox="Zdjecia/Galeria/Kategoria1/Duze/image2.jpg">
<lightbox>Zdjecia/Galeria/Kategoria1/Duze/image2.jpg</lightbox>

</image>

<image source="Zdjecia/Galeria/Kategoria1/Miniaturki/image3.jpg" lightbox="Zdjecia/Galeria/Kategoria1/Duze/image3.jpg">
<lightbox>Zdjecia/Galeria/Kategoria1/Duze/image3.jpg</lightbox>
</image>


</images>

请寻求帮助。

问候克里斯蒂安

4

1 回答 1

1

问题是在您的代码中,您将为每个图像打开一个灯箱。

您应该做的是创建一个包含所有图像的数组,然后将其传递给灯箱。

而不是这个:

$('image',xml).each(function(i) {
        lightbox = $(this).find("lightbox").text();
      openLightbox(lightbox)
    });

做这个:

images = new Array();
$('image',xml).each(function(i) {
      image = $(this).find("lightbox").text();
      images.push(image);
    });
openLightbox(images)
于 2012-08-09T09:08:07.200 回答