Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
1 / 1 / 0
Регистрация: 20.04.2013
Сообщений: 283
1

Как переписать скрипт чтоб можно было создавать множество альбомов?

05.12.2018, 11:27. Показов 817. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день. Столкнулся с неприятной задачей. Есть такой вот код. создаю небольшой альбом с круговым меню. Возникла очевидная проблема- при добавлении второго такого и более начинается неправильная работа. Как лучше переписать скрипт код чтоб можно было создавать множество таких альбомов? мне нужно чтоб добавление происходило просто дописанием дива-контейнера и дивов-детей в нем, без необходимости писать что-то в скриптах при создании каждого нового экземпляра.
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
<div class="circle-albom test">
        <div class="photocard noselect"><img src="src/images/image1.jpg">1</div>
        <div class="photocard noselect"><img src="src/images/image2.jpg">2</div>
        <div class="photocard noselect"><img src="src/images/image3.jpg">3</div>
        <div class="photocard noselect"><img src="src/images/image4.jpg">4</div>
        <div class="photocard noselect"><img src="src/images/image5.jpg">5</div>
        <div class="photocard noselect"><img src="src/images/image6.jpg">6</div>
        <div class="photocard noselect"><img src="src/images/image7.jpg">7</div>
        <div class="photocard noselect"><img src="src/images/image8.jpg">8</div>
         
        
    </div>
CSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
*{margin: 0;padding: 0;}
.circle-albom
{
    
    position: relative;
    margin: 0 auto;
    margin-top: 15px;
    margin-bottom: 50px;
    width: 500px;
    height: 500px;
    border: 1px solid black;
    border-radius: 5%;
     
    
}
.circle-albom .photocard
{
    position: absolute;
    width: 30%;
    height: 20%;
    bottom: 5%;
    left:35%;
    
    border-radius: 5%;
    transform-origin: 50% -120% 0; /* x y z */
    
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
}
 
.circle-albom .photocard img
{
 
    width: 100%;
    height: 100%;
}
.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
var circle_albom=$(".circle-albom");
var photocard=$(".circle-albom .photocard");
var helpcolor,angle,rotate_stapse;
var positions,displacement; 
 
 
function loadcards()
{
 
    positions=[photocard.length];
    displacement=[photocard.length];
    angle=360/photocard.length;
    rotate_stapse=1;
    for(var i=0;i<photocard.length;i++)
    {
        $(photocard.get(i)).css("transform","rotate("+i*angle+"deg)");
        positions[i]=i;
        if(i<=photocard.length/2)
            {
                displacement[i]=0-i;
            }
        else
            {
                displacement[i]=photocard.length-i;
            }
    }
 
}
loadcards();
 
 
$( document ).ready(function(){$(photocard).css("transition","all 1s");});
 
photocard.click(function(){
   
  angle=360/photocard.length;
rotate_stapse=displacement[$(this).index()];
 for(var i=0;i<photocard.length;i++)
    {
        positions[i]=positions[i]+rotate_stapse;
        displacement[i]=displacement[i]-rotate_stapse;
        if(displacement[i]>=photocard.length/2)
            {
                displacement[i]=0-(photocard.length-displacement[i]);
            }
        if(displacement[i]<=0-(photocard.length/2))
            {
                displacement[i]=photocard.length+displacement[i];
            }
        $(photocard.get(i)).css("transform","rotate("+(positions[i])*angle+"deg)");
           
    }
    
 });
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.12.2018, 11:27
Ответы с готовыми решениями:

как сделать в этом коде чтоб конкретное число кнопок можно было задавать допустим 3 кнопки чтоб открывало
this.Load += new EventHandler(Form4_Load); button1.MouseHover += new...

Можно ли чтоб было видно в Edit букву, и в него можно было еще и цифру писать?
Ребята,подскажите,возможно ли так сделать на билдере? чтоб было видно букву, и в окошко можно...

Как можно сделать так, чтоб можно было вписывать время в таблицу?
Есть таблица: create table PROGRAMY ( pr_name varchar2(50), zanra_ID number primary key,...

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

1
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,625
05.12.2018, 17:12 2
Dimitrii, попросите модераторов перенести тему в нужный раздел (jquery) -- кликните по красному треугольничку в стартовом посте и изложите в окошке эту просьбу
0
05.12.2018, 17:12
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.12.2018, 17:12
Помогаю со студенческими работами здесь

Как сделать, чтоб можно было ловить wi-fi и раздавать в доме?
Как сделать, чтоб можно было ловить wi-fi и раздавать в доме?

Как обозначить, чтоб в строку можно было вводить только цифры?
Какие есть варианты, чтоб я мог обозначить, что в строку можно было вводить только цифры(целые), а...

как сделать чтоб в видео чат можно было включить видеоклип
извените если не сюда написал,но я ненашел подходяящей темы. Подскажите как можно сделать так чтоб...

Как сохранить данные, чтоб их можно было открыть в Microsoft Visio
Здравствуйте! В моем приложении строится граф. Могу ли я его как-то сохранить в файл, чтоб потом...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Почему при инициализации массива 3х3х3 будет создано 13 одномерных массивов?
Alexander-7 16.01.2025
При инициализации многомерного массива, в данном случае трехмерного массива размерностью 3x3x3, может возникнуть путаница относительно того, как структура данных организована в памяти. Общее число. . .
Использование связки C# и PHP в корпоративной разработке и микросервисной архитектуре
InfoMaster 16.01.2025
Введение в интеграцию C# и PHP В современной корпоративной разработке все чаще возникает потребность в создании гибких и масштабируемых решений, способных эффективно решать широкий спектр. . .
Как использовать Kerio дома для управления сетью и пользователями
InfoMaster 16.01.2025
Использование технологий для улучшения повседневной жизни стало неотъемлемой частью современного быта. Одной из таких технологий является Kerio — мощный инструмент для управления сетью и. . .
Есть ли будущее у DVD и Blu-ray?
InfoMaster 16.01.2025
В эпоху стремительного развития цифровых технологий и повсеместного распространения потоковых сервисов вопрос о будущем физических носителей информации становится все более актуальным. Особенно остро. . .
Как проводить научные вычисления на Python
InfoMaster 15.01.2025
Python стал одним из наиболее востребованных языков программирования в области научных вычислений благодаря своей простоте, гибкости и обширной экосистеме специализированных библиотек. Научные. . .
Создание игры типа Minecraft на PyGame/Python: пошаговое руководство
InfoMaster 15.01.2025
В данном руководстве мы рассмотрим процесс создания игры в стиле Minecraft с использованием библиотеки PyGame на языке программирования Python. Этот проект идеально подходит как для начинающих. . .
Как создать свою первую игру в стиле Doom на Unreal Engine
InfoMaster 15.01.2025
Разработка шутера от первого лица в стиле классического Doom представляет собой увлекательное путешествие в мир игрового программирования, где сочетаются творческий подход и технические навыки. . . .
Параллельное программировани­е: основные технологии и принципы
InfoMaster 15.01.2025
Введение в параллельное программирование Параллельное программирование представляет собой фундаментальный подход к разработке программного обеспечения, который позволяет одновременно выполнять. . .
Как написать микросервис на C# с Kafka, MediatR, Redis и GitLab CI/CD
InfoMaster 15.01.2025
В современной разработке программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот подход позволяет разделить сложную систему. . .
Что такое CQRS и как это реализовать на C# с MediatR
InfoMaster 15.01.2025
Концепция CQRS и её роль в современной разработке В современном мире разработки программного обеспечения архитектурные паттерны играют ключевую роль в создании масштабируемых и поддерживаемых. . .
Как настроить CI/CD с Azure DevOps
InfoMaster 15.01.2025
CI/ CD, или непрерывная интеграция и непрерывное развертывание, представляет собой современный подход к разработке программного обеспечения, который позволяет автоматизировать и оптимизировать процесс. . .
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru