Список файлов Fancybox через переменную - PullRequest
0 голосов
/ 12 июля 2010

Я испытываю небольшую ошибку, используя плагин fancybox jquery.Я хочу использовать переменную, которая содержит имена файлов изображений, чтобы заполнить список файлов внутри функции fancybox.Но я не могу заставить его работать.

В этом примере я ввел имена файлов вручную, но это та часть, которую я хотел бы заполнить var "files", которая при печати выглядитточно так же, как текущий список файлов в функции fancybox, но когда я заменяю список файлов этим var, он не работает.Единственная проблема, которую я могу обнаружить, заключается в том, что кавычки вокруг имен файлов преобразуются в% 27

$("#schermafbeeldingen").click(function() {
        $.post(window.jsRootPath+"includes/getSomeStuff.php", {},
        function(data){
            //files = data.sFancyBoxParams;
            var myArray = data.sFancyBoxParams.split(',');
            files = '';
            for (i=0;i<myArray.length;i++)
            {
                files += '\'' + myArray[i] + '\'' + ',\n';
            }
            alert(files);
            files2 = "'http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/1-start.jpg','http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/2-content.jpg','http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/3-_filemanager.jpg','http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/4_-_imagemanager.jpg','http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/5-_seo.jpg','http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/6-banners.jpg','http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/7-downloads.jpg'";
            files3 = '"http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/1-start.jpg","http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/2-content.jpg","http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/3-_filemanager.jpg","http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/4_-_imagemanager.jpg","http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/5-_seo.jpg","http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/6-banners.jpg","http://cms.admixconnect.nl/upload/www.zerniq.nl/schermafbeeldingen/7-downloads.jpg"';
            $.fancybox([
                'http://www.test.com/schermafbeeldingen/1-start.jpg',
                'http://www.test.com/schermafbeeldingen/2-content.jpg',
                'http://www.test.com/schermafbeeldingen/3-_filemanager.jpg',
                'http://www.test.com/schermafbeeldingen/4_-_imagemanager.jpg',
                'http://www.test.com/schermafbeeldingen/5-_seo.jpg',
                'http://www.test.com/schermafbeeldingen/6-banners.jpg',
                'http://www.test.com/schermafbeeldingen/7-downloads.jpg'
            ], {
                'padding'           : 0,
                'transitionIn'      : 'none',
                'transitionOut'     : 'none',
                'type'              : 'image',
                'changeFade'        : 0,
                'overlayOpacity'    : 0.8
            });
        }, "json");
    });

1 Ответ

1 голос
/ 12 июля 2010

При использовании предупреждений files может выглядеть как массив, переданный в функцию fancybox, но это не так. files, как вы определяете, это строка, в то время как массив, который вы передаете, это .. массив :) Я не знаю fancybox в деталях, но я думаю, что он может принять массив URL-адресов изображений и сделать слайд-шоу из этого. Когда вы вместо этого передаете строку, она, скорее всего, попытается проанализировать ее как HTML и выяснить, что это недопустимый HTML.

Я думаю, что вы все настроены после выполнения var myArray = data.sFancyBoxParams.split(','); и что вы можете передать myArray в качестве параметра в fancybox.

...