Привет всем!
В общем вопрос вот в чем: есть около 100 картинок (вес маленький), нужно сделать так, чтобы после того как картинки загрузились (а пока они грузятся, нужно показывать прелоадер), они начали показываться на странице в определенном порядке (1 2 3 4 и т.д.). Возможно такое сделать? В принципе, на чем это будет реализовано, JS, PHP, не так важно.
1. Antonio - 04 Января, 2008 - 14:01:28 - перейти к сообщению
2. Furax - 05 Января, 2008 - 01:30:29 - перейти к сообщению
Antonio
Ну... Я бы предложил с помощью php набить javascript-массив имён картинок (естественно, если именование картинок хорошее, например, 1.jpg ... 100.jpg, этот этап упрощается). Затем javascript грузит 100 объектов Image, периодически проверяя состояние (только надо грамотно отработать ситуацию с отключенными картинками в браузере, чтобы бесконечный цикл не получился). Затем, когда всё загружено, запускаем периодическое обновление. В принципе ничего сложного.
Ну... Я бы предложил с помощью php набить javascript-массив имён картинок (естественно, если именование картинок хорошее, например, 1.jpg ... 100.jpg, этот этап упрощается). Затем javascript грузит 100 объектов Image, периодически проверяя состояние (только надо грамотно отработать ситуацию с отключенными картинками в браузере, чтобы бесконечный цикл не получился). Затем, когда всё загружено, запускаем периодическое обновление. В принципе ничего сложного.
3. Antonio - 05 Января, 2008 - 03:59:43 - перейти к сообщению
Мне нужен хотябы пример, т.к. я не разбираюсь в PHP.
4. Furax - 05 Января, 2008 - 05:46:21 - перейти к сообщению
Я бы сделал так:
Работает корректно при наличии в директории images/ хотя бы одной фотографии. На этом, в принципе, php-часть заканчивается и начинается javascript.
CODE:
<script type="text/javascript">
<!--
var files = <?php
$files=array();
foreach (glob('images/*.*') as $file)
$files[] = $file;
print "['" . implode("', '", $files) . "'];";?>
//-->
</script>
<!--
var files = <?php
$files=array();
foreach (glob('images/*.*') as $file)
$files[] = $file;
print "['" . implode("', '", $files) . "'];";?>
//-->
</script>
Работает корректно при наличии в директории images/ хотя бы одной фотографии. На этом, в принципе, php-часть заканчивается и начинается javascript.