Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Листинг файлов папки (https://javascript.ru/forum/misc/33650-listing-fajjlov-papki.html)

andrey1402 01.12.2012 14:58

Листинг файлов папки
 
Помогите пожалуйста!
Необходимо вывести все картинки из папки на страницу.
На php организовать листинг папки на сервере просто:
$location = 'images';
$files = glob($location . '/*.{jpg,gif,png}', GLOB_BRACE);
for ($i = 0; $i < count($files); $i++)
{
<img src='$files[$i]'/>

Появилась необходимость сделать то же на js. Я понимаю, что js работает на стороне клиента, но возможно же загружать определенное количество картинок, зная их имена:
for (i=1; i<10; i++) {
var img = document.createElement("IMG");
img.src = "images/" + i + ".png";
img.id = i;
img.width = "40"; 
img.height = "40";
document.getElementById("templates").appendChild(img);
};

Буду благодарен, если укажете в каком направлении рыть.

ruslan_mart 01.12.2012 16:00

for(i=1;i<10;i++){
document.write('<img alt="" src="images/'+i+'.png" id="'+i+'">');
}

andrey1402 01.12.2012 16:36

Цитата:

Сообщение от Ruslan_xDD (Сообщение 218966)
for(i=1;i<10;i++){
document.write('<img alt="" src="images/'+i+'.png" id="'+i+'">');
}

Всё это понятно. Но как хотя бы указать количество файлов в папке? Вместо "i<10". Уже не спрашиваю про список имен файлов.

ruslan_mart 01.12.2012 16:52

var col = 0; //Переменная, в которую будет записываться число загруженных изображений

for(i=1;i<1000;i++) //Создаём цикл.
{
document.write('<img alt="" src="images/'+i+'.png" id="'+i+'">'); //Добавляем изображение на страницу
break; //Останавливаем цикл
document.getElementById(i).onload = function() //Если изображение будет загружено, то цикл возобновляется и в переменную col прибавляется 1.
{
continue;
col++;
}
}


Может и бред написал, но всё же можно попробовать.

andrey1402 01.12.2012 17:02

Тоже выход, только код не красивый.
Придется изучать организацию tpl в cms(((


Часовой пояс GMT +3, время: 21:56.