X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Установка 2 одинаковых скриптов на 1 странице
volkan
volkan
Topic Starter сообщение 3.6.2013, 15:25; Ответить: volkan
Сообщение #1


Всем привет. Имеется простой скрипт фотогалереи. Необходимо на одной странице разместить несколько таких блоков с галереями. Каждая из них должна содержать свои фото и управляться независимо от нажатий на кнопки в других галереях. Подскажите, пожалуйста, как придать каждому скрипту уникальность, чтобы он не зависел от других?

Сам скрипт:
<?php
/**
* Класс фото-галереи на сайт
*/
class Gallery {
    public function getGallery() {
        //Выбираем все содержимое папки images, и записываем из в массив $files
        $files = scandir("images/");
        $gallery_files = array();
        foreach ($files as $key => $value) { //Проходим по массиму
            //Проверяем файл или нет, если файл, то:
            if (filetype("images/" . $value) == "file") {
                $gallery_files[] = $value;  //Записываем в массив
            }
        }
        return $gallery_files; //Возвращаем массив
    }
}
$obj = new Gallery();
$gallery = $obj->getGallery();
?>
<img src="" alt="" id="gallery" />
<div id="number_img"></div>
<a href="javascript:void(0)" onclick="backImg(); this.blur();">Назад</a> /
<a href="javascript:void(0)" onclick="nextImg(); this.blur();">Вперед</a>

<script type="text/javascript">
    var images = new Array();
    var current_image_key = 0; //Переменная содержит номер текущей фотографии
<?php
foreach ($gallery as $key => $file) { //Проходим по всем фотографиям
    echo "images[$key] = new Image();nr"; //Создаем новый объект Images
    echo "images[$key].src = './images/$file';nr"; //Записываем путь к фотографии
}
?>
/**
* Функция обновляет текущее изображение, и его номер
*/
function refreshImage() {
    //Изменяем изображение на текущее
    document.getElementById("gallery").src = images[current_image_key].src;
   //Изменяем надпись под изображением
    document.getElementById("number_img").innerHTML =
        (current_image_key+1) + " из " + images.length
}
/**
* Следующая фотография
*/
function nextImg() {
    current_image_key++; //Увеличиваем текущую фотографию на 1
   //Если достигнут конец, то делаем первую фотографию текущей
    if (current_image_key >= images . length) current_image_key = 0;
    refreshImage(); //Обновляем фотографию
}
/**
* Предыдущая фотография
*/
function backImg() {
    current_image_key--; //Уменьшаем текущую фотографию на 1
   //Если достигнуто начало, то делаем последнюю фотографию текущей
    if (current_image_key < 0) current_image_key = images . length - 1;
    refreshImage(); //Обновляем фотографию
}
refreshImage(); //Обновляем фотографию
</script>


Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) SEO-текст на главной странице сайта и в категориях
5 boltuk 1355 26.3.2024, 21:43
автор: c4p1t4l15t
Открытая тема (нет новых ответов) Услуги по созданию и доработке скриптов PHP, MySQL, JavaScript, jQuery
Разработка сайтов и сервисов под-ключ
0 alexey 1171 24.11.2023, 14:46
автор: alexey
Открытая тема (нет новых ответов) Сделать правки на html-странице
5 TABAK 2261 20.5.2023, 10:45
автор: EvilGomel
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыНаписание скриптов на PHP, в т.ч. модулей для CMS, и другие услуги
Создание модулей и хаков для DLE и других движков, перенос контента
170 Coppermine 117867 24.2.2023, 12:30
автор: boltuk
Горячая тема (нет новых ответов) Создание сайтов, разработка скриптов\парсеров и десктопного ПО
Владею CMS DLE, CMS Drupal и языком C#
37 Zak2009 26819 23.10.2022, 1:12
автор: Zak2009


 



RSS Текстовая версия Сейчас: 29.3.2024, 12:47
Дизайн