С Новым годом! Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/35: Рейтинг темы: голосов - 35, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 06.05.2012
Сообщений: 4

Как создать слайдшоу на jquery с чтением каталога изображений

06.05.2012, 21:30. Показов 7135. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
У меня есть небольшое слайд шоу на сайте, и все изображения прописаны именно внутри кода вот так:

JavaScript
1
2
3
4
5
6
7
8
9
10
11
$(function() {
  $('#test1').crossSlide({
    speed: 45, //in px/sec
    fade: 1    //in sec
  }, [
    { src: 'images/sand-castle.jpeg', dir: 'up'   },
    { src: 'images/sunflower.jpeg',   dir: 'down' },
    { src: 'images/flip-flops.jpeg',  dir: 'up'   },
    { src: 'images/rubber-ring.jpeg', dir: 'down' }
  ]);
});
а как сделать чтение из каталога images. То есть, чтобы можно было загрузить все картинки в папку / images / а они автоматически попали в скрипт и отобразились на сайте. Уже голова кипит, никак не могу это сделать. Помогите, пожалуйста, решить эту головоломку.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.05.2012, 21:30
Ответы с готовыми решениями:

скрипт слайдшоу, который как бы прокручивает несколько изображений в ряд
Помогите пожалуйста найти скрипт слайдшоу, который как бы прокручивает несколько изображений в ряд.Хочу вставить это слайдшоу в шапку но...

Слайдшоу на jquery
Всем день добрый (вечер, ночь, утро). Наставьте на путь истинный люди добрые. Суть проблемы - есть слайдшоу...

Слайдшоу на чистом Jquery
Как написать код на ЧИСТОМ Jquery. Когда кликаю на картинку надо чтобы на этом месте куда кликаю появлялись другие картинки. Второй...

12
 Аватар для Daredevi1
311 / 303 / 78
Регистрация: 09.05.2009
Сообщений: 723
06.05.2012, 22:18
На чистом js такого не сделаешь. Нужен еще какой-нибудь серверный язык. Я бы сделал так: сначала отправляешь ajax-запрос к серверному скрипту, который возвращает массив адресов картинок нужного каталога, ну а дальше инитишь свою галерею с этим массивом и все.
0
0 / 0 / 0
Регистрация: 06.05.2012
Сообщений: 4
07.05.2012, 07:49  [ТС]
А вы не подскажете как это сделать. Как совместить php и js?
Например у меня есть скрипт который производит чтение из каталога, он находится в файле img.php, а как вставить массив который он выводит внутрь js?
Чтобы получилось примерно так
JavaScript
1
2
3
4
5
6
7
8
9
10
$(function() {
  $('#test1').crossSlide({
    speed: 45, //in px/sec
    fade: 1    //in sec
  }, [
    
Здесь вывод массива из php
 
  ]);
});
Или может у кого есть пример реализации, чтобы посмотреть как говорится в живую? Буду очень благодарен.
0
 Аватар для Daredevi1
311 / 303 / 78
Регистрация: 09.05.2009
Сообщений: 723
07.05.2012, 13:03
Допустим пхп выдает нам такой json:
PHP
1
echo '["image1.png", "image2.png", "image3.png", "image4.png"]';
Тогда инитим слайдшоу так.
JavaScript
1
2
3
4
5
6
7
8
$(function() {
  $.getJSON('images.php', function(data){
    $('#test1').crossSlide({
      speed: 45, //in px/sec
      fade: 1    //in sec
    }, data);
  });
});
0
0 / 0 / 0
Регистрация: 06.05.2012
Сообщений: 4
07.05.2012, 16:55  [ТС]
Почему-то не работает, может я что-то неправильно делаю. У меня получилось вот так. В корне сайта есть папка img с изображениями, и в этой папке есть файл a.php, который выводит изображения. Вот его код
PHP
1
2
3
4
5
6
7
8
9
10
11
<?
  $dir = opendir (".");
  while ( $file = readdir ($dir))
  {
    if (( $file != ".") && ($file != "..") && ($file != "a.php"))
    {
        echo "$file<br>";
    }
  }
  closedir ($dir);
?>
В главном шаблоне движка пишу код
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script src='js/jquery.js' type='text/javascript'></script>
<script src='js/jquery.cross-slide.js' type='text/javascript'></script>
<script>jQuery.noConflict();</script>
<script>
 
<script type='text/javascript'>
$(function() {
  $.getJSON('img/a.php', function(data){
    $('#test1').crossSlide({
      speed: 45, //in px/sec
      fade: 1    //in sec
    }, data);
  });
});
</script>
А в месте где необходимо вывести картинки вставляю
<div id='test1'></div>
В итоге картинки не выводятся в нужном месте. Что делать? Какая у меня ошибка?
0
 Аватар для Daredevi1
311 / 303 / 78
Регистрация: 09.05.2009
Сообщений: 723
07.05.2012, 19:55
PHP
1
2
3
4
5
6
7
8
9
10
11
12
$path = 'images';
$d = dir($path);
if ($d) {
    $files = array();
    while (false !== ($name = $d->read())) {
        if ($name === '.' || $name === '..') continue;
        $fullName = $path . "/" . $name;
        if (is_file($fullName)) $files[] = $name;
    }
    $d->close();
    echo '["'.implode('","', $files).'"]';
}
1
0 / 0 / 0
Регистрация: 06.05.2012
Сообщений: 4
07.05.2012, 23:20  [ТС]
Спасибо, почти получилось вывести картинки из каталога, только одна незадача скрипт просит ссылки вида
JavaScript
1
{ src: 'images/img1.jpeg', dir: 'up'   },
А на выходе из php получается
JavaScript
1
["img1.jpg","img2.jpg","img3.jpg"]
Помогите прописать недостающие элементы
JavaScript
1
2
3
{ src: "img1.jpg", dir: 'up' }
{ src: "img2.jpg", dir: 'up' }
{ src: "img3.jpg", dir: 'up' }
Я уже запутался в коде...

Добавлено через 41 минуту
Cам сообразил, получилось вот так
PHP
1
echo '[ { src: "images/'.implode('", dir: "up"},{ src: "images/', $files).'", dir: "up"}]';
Daredevi1, спасибо, вам большое за помощь.
0
Владимир81
09.05.2012, 20:23
А как сделать чтобы этот код
PHP
1
2
3
4
5
6
7
8
9
10
11
12
$path = 'images';
$d = dir($path);
if ($d) {
    $files = array();
    while (false !== ($name = $d->read())) {
        if ($name === '.' || $name === '..') continue;
        $fullName = $path . "/" . $name;
        if (is_file($fullName)) $files[] = $name;
    }
    $d->close();
    echo '["'.implode('","', $files).'"]';
}
выводил не просто список картинок, а выводил картинки в случайном порядке?
 Аватар для Daredevi1
311 / 303 / 78
Регистрация: 09.05.2009
Сообщений: 723
09.05.2012, 21:18
Цитата Сообщение от Владимир81 Посмотреть сообщение
а выводил картинки в случайном порядке?
Перед echo добавьте
PHP
1
shuffle($files);
2
210 / 204 / 52
Регистрация: 25.07.2010
Сообщений: 1,162
09.05.2012, 21:18
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
$path = 'images';
$d = dir($path);
if ($d) {
    $files = array();
    while (false !== ($name = $d->read())) {
        if ($name === '.' || $name === '..') continue;
        $fullName = $path . "/" . $name;
        if (is_file($fullName)) $files[] = $name;
    }
    $d->close();
    shuffle($files);
    echo '["'.implode('","', $files).'"]';
}
каждый раз будет выводить разные картинки

//блин в одно время добавили ) пс. кстати я твой поклонник в jq
2
Владимир81
09.05.2012, 21:29
Спасибо, все оказалось так просто.
2 / 2 / 0
Регистрация: 11.05.2012
Сообщений: 8
13.05.2012, 01:28
Доброго времени суток. Проблема точно такая же,только хочу грузить картинки из папки не в слайд шоу,а в div со списком так,чтоб каждое изображение было отдельным элементом списка,не подскажите,как это сделать?

Галерея представляет из себя вот такое :

HTML5
1
2
3
4
5
6
7
8
9
10
11
<div class="panel_left" onclick="ldivclc();"> 
    <div id="gallery">
        <ul>
            <li><a href="photos/image1.jpg"><img src="photos/thumb_image1.jpg" width="72" height="72" alt="" /></a></li>
            <li><a href="photos/image2.jpg"><img src="photos/thumb_image2.jpg" width="72" height="72" alt="" /></a></li>        
            <li><a href="photos/image3.jpg"><img src="photos/thumb_image3.jpg" width="72" height="72" alt="" /></a></li>        
            <li><a href="photos/image4.jpg"><img src="photos/thumb_image4.jpg" width="72" height="72" alt="" /></a></li>       
            <li><a href="photos/image5.jpg"><img src="photos/thumb_image5.jpg" width="72" height="72" alt="" /></a></li>      
        </ul>
    </div>
</div>
в пхп скрипте только подставил путь до своей папки,где хранится пхп страница,т.е

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$path = 'D:/site/Portfolio/img';
$d = dir($path);
if ($d) {
    $files = array();
    while (false !== ($name = $d->read())) {
        if ($name === '.' || $name === '..') continue;
        $fullName = $path . "/" . $name;
        if (is_file($fullName)) $files[] = $name;
    }
    $d->close();
    echo '["'.implode('","', $files).'"]';
}
?>
а вот само тело скрипта никак не догоню как сделать
0
 Аватар для DanteLoL
5 / 6 / 2
Регистрация: 13.06.2013
Сообщений: 134
28.08.2013, 23:05
ДОброго времени суток! задача у меня такая! написать Слайд Шоу (СШ) которое желательно не требует JQ и берет себе адреса изображений из БД. написал вот такой скрипт так как там может быть от 1го до 5 слайдов то скрипт в зависимости от количества взятых из БД строк выводит скрипт, но для начала первожу вот так переменные

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<script>
var numphoto = "<? echo $num_rowphoto; ?>";
 
var photo1 = "<? echo $photo[0]; ?>";
if (numphoto>1) {
var photo2 = "<? echo $photo[1]; ?>";
}
if (numphoto>2) {
var photo3 = "<? echo $photo[2]; ?>";
}
if (numphoto>3) {
var photo4 = "<? echo $photo[3]; ?>";
}
if (numphoto>4) {
var photo5 = "<? echo $photo[4]; ?>";
}
</script>
Добавлено через 2 минуты
Далее выводит еще несколько строк скрипта с адресами картинок

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<script type="text/javascript">
var image1=new Image()
image1.src="photo1"
if (numphoto>1) {
var image2=new Image()
image2.src="photo2"
}
if (numphoto>2) {
var image3=new Image()
image3.src="photo3"
}
if (numphoto>3) {
var image4=new Image()
image4.src="photo4"
}
if (numphoto>3) {
var image5=new Image()
image5.src="photo5"
}
</script>
и само СШ

HTML5
1
<img src="<?php echo $photo[0]; ?>" name="slideshow" width=600 height=400>
ну и конечно обработчик

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<script type="text/javascript">
var step=1
function slideit(){
if (!document.images)
return
document.images.slide.src=eval("image"+step+".src")
if (step<numphoto)
step++
else
step=1
setTimeout("slideit()",3000)
}
slideit()
</script>
в итоге - 1я картинка отображается (в виду того что она видимо отражене через PHP) но дальше СШ ни как себя не ведет не листается никак и вобщем не работает - сразу предупреждаю сия идея скрипта пришла ко мне в 3 часа ночи и может сейчас показаться и мне самому полным бредом) помогите разобраться плииз или найти альтернативу!) зарание спасибо!

Добавлено через 6 часов 32 минуты
ух вся проблем начинается с того что вот тут
JavaScript
1
var numphoto = "<? echo $num_rowphoto; ?>";
и в подобных не переводятся переменные из PHP хотя этот способ перевода рекомендуют чуть ли не на каждом форуме ОО как быть тот?

Добавлено через 7 часов 55 минут
переделал вот так и переменные передаются!
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<script language="javascript">
var numphoto = <?php echo $num_rowphoto; ?>;
 
var photo1 = '<?php echo $photo[0]; ?>';
 
 
if (numphoto>1) {
var photo2 = '<?php echo $photo[1]; ?>';
 
}
if (numphoto>2) {
var photo3 = '<? echo $photo[2]; ?>';
}
if (numphoto>3) {
var photo4 = '<? echo $photo[3]; ?>';
}
if (numphoto>4) {
var photo5 = '<? echo $photo[4]; ?>';
}
</script>
Добавлено через 42 секунды
этот момент теже пришлось так сделать для порядка
JavaScript
1
2
3
4
5
6
</script>
 
<img src="" id="firstphoto" name="slideshow">
 
<script type="text/javascript">
document.getElementById('firstphoto').src = photo1;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.08.2013, 23:05
Помогаю со студенческими работами здесь

Слайдшоу всех изображений из папки
Пытаюсь сделать слайдшоу картинок с выбором из папки. $folder = 'images/product/'.$product.'/'; $array_to_js = 'var...

Подправить отображение ссылок пагинации на jquery (слайдшоу)
http://1.helpdelphi.ru/11/indexx.html внизу есть круглишки как их поднять выше чтобы они отображались на самой картинке, ни как не могу...

Вывести на экран содержимое каталога, размер файлов каталога, и создать новый файл
Ребята помогите создать программу на ассемблере , в которой нужно : вывести на экран содержимое каталога, размер фалов каталога, и создать...

Вывод изображений из каталога
Здравствуйте. Учу php и пытаюсь сделать скрипт галереи, который бы выводил на экран картинки из каталога, а подписи к ним брал из БД....

Вывод изображений из каталога
Доброго вечера. Возник такой вопрос. Каким образом можно вывести на форму 5 изображений из случайного !каталога! Пример. 10...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru