diff options
Diffstat (limited to 'index.html')
| -rw-r--r-- | index.html | 598 |
1 files changed, 451 insertions, 147 deletions
| @@ -1,148 +1,452 @@ | |||
| 1 | <!DOCTYPE html> | 1 | <!doctype html> |
| 2 | <html lang="en"> | 2 | <html lang="ru"> |
| 3 | <head> | 3 | <head> |
| 4 | <meta charset="UTF-8" /> | 4 | <meta charset="UTF-8" /> |
| 5 | <meta http-equiv="X-UA-Compatible" content="IE=edge" /> | 5 | <meta http-equiv="X-UA-Compatible" content="IE=edge" /> |
| 6 | <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | 6 | <meta name="viewport" content="width=device-width, initial-scale=1.0" /> |
| 7 | 7 | ||
| 8 | <link rel="stylesheet" href="/style.css" /> | 8 | <link rel="stylesheet" href="/style.css" /> |
| 9 | <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" /> | 9 | <link rel="shortcut icon" href="/src/logo.svg" type="image/x-icon" /> |
| 10 | 10 | ||
| 11 | <title>ПСЖ</title> | 11 | <title>ПСЖ онлайн</title> |
| 12 | </head> | 12 | </head> |
| 13 | 13 | ||
| 14 | <body> | 14 | <body> |
| 15 | <main> | 15 | <header class="container header"> |
| 16 | <h1>ПСЖ как стиль жизни</h1> | 16 | <div class="logo"> |
| 17 | <img src="/src/student.png" alt="Студент" /> | 17 | <span>псж</span><img src="/src/logo.svg" alt="logo" /><span>онлайн</span> |
| 18 | <p> | 18 | </div> |
| 19 | Устали от бесконечных лекций, зубрежки и дедлайнов? Мечтаете о свободе и | 19 | <nav> |
| 20 | беззаботности? <b>Тогда ПСЖ – это именно то, что вам нужно!</b> | 20 | <a href="#features">Преимущества</a> |
| 21 | </p> | 21 | <a href="#reviews">Отзывы</a> |
| 22 | 22 | <a href="#sponsors">Спонсоры</a> | |
| 23 | <h2>Почему именно ПСЖ?</h2> | 23 | </nav> |
| 24 | <ul> | 24 | </header> |
| 25 | <li> | 25 | |
| 26 | <b>Гарантированный отдых от учебы.</b> Никаких экзаменов, курсовых и | 26 | <main> |
| 27 | лабораторных. Только вы, пляж и военкомат. | 27 | <section class="hero container"> |
| 28 | </li> | 28 | <div class="hero-content"> |
| 29 | <li> | 29 | <span class="badge">🔥 Хит сезона 2026</span> |
| 30 | <b>Возможность реализовать себя в других сферах.</b> Может быть, вы | 30 | <h1>ПСЖ как стиль жизни</h1> |
| 31 | талантливый блогер, начинающий музыкант или просто любитель | 31 | <p class="subtitle"> |
| 32 | путешествий? ПСЖ – это ваш шанс раскрыть свои творческие способности. | 32 | Устали от дедлайнов и лекций? Инвестируйте в свое свободное время. |
| 33 | </li> | 33 | Отчисление по собственному желанию — это выбор успешных людей. |
| 34 | <li> | 34 | </p> |
| 35 | <b>Экономия на учебных материалах и проездах.</b> Больше денег на | 35 | <div class="hero-buttons"> |
| 36 | развлечения и шопинг! | 36 | <a |
| 37 | </li> | 37 | href="https://my.itmo.ru/requests/new/2626" |
| 38 | <li> | 38 | class="btn btn-primary pulse" |
| 39 | <b>Увеличение свободного времени.</b> Наконец-то вы сможете выспаться, | 39 | > |
| 40 | заняться спортом или просто поваляться на диване. | 40 | Оформить ПСЖ |
| 41 | </li> | 41 | </a> |
| 42 | </ul> | 42 | <span class="btn btn-secondary btn-fake"> Я хочу страдать </span> |
| 43 | 43 | </div> | |
| 44 | <h2>Топ-10 причин оформить ПСЖ прямо сейчас</h2> | 44 | <p class="disclaimer"> |
| 45 | <ol> | 45 | *Нажимая кнопку, вы соглашаетесь с тем, что военком уже выехал. |
| 46 | <li> | 46 | </p> |
| 47 | <b>Избежать встречи с надоедливым преподавателем.</b> Давайте | 47 | </div> |
| 48 | посмотрим правде в глаза: иногда лучше пропустить пару лекций, чем | 48 | <div class="hero-image"> |
| 49 | слушать бесконечные монологи о квантовой физике. | 49 | <div class="emoji-scene">🏖️💼👋</div> |
| 50 | </li> | 50 | </div> |
| 51 | <li> | 51 | </section> |
| 52 | <b>Научиться готовить сложные блюда.</b> Ведь что может быть лучше, | 52 | |
| 53 | чем удивить своих друзей изысканным ужином, приготовленным своими | 53 | <section id="features" class="features-section"> |
| 54 | руками? А если что-то пойдет не так, всегда можно сказать, что это был | 54 | <div class="container"> |
| 55 | эксперимент. | 55 | <h2>Почему выбирают нас?</h2> |
| 56 | </li> | 56 | <div class="grid"> |
| 57 | <li> | 57 | <div class="card"> |
| 58 | <b>Стать профессиональным игроком в компьютерные игры.</b> Ведь сидеть | 58 | <div class="icon">🧠</div> |
| 59 | за компьютером целыми днями – это не просто развлечение, а настоящая | 59 | <h3>Сохранение мозга</h3> |
| 60 | работа! | 60 | <p> |
| 61 | </li> | 61 | Миллионы нейронов будут спасены от разрушения сопроматом и |
| 62 | <li> | 62 | философией. |
| 63 | <b>Посвятить себя изучению древнеегипетских иероглифов.</b> Или, может | 63 | </p> |
| 64 | быть, научиться играть на ханг-дроме? Возможности безграничны! | 64 | </div> |
| 65 | </li> | 65 | <div class="card"> |
| 66 | <li> | 66 | <div class="icon">💸</div> |
| 67 | <b>Открыть собственный бизнес по выращиванию кактусов.</b> Ведь кто не | 67 | <h3>Финансовая грамотность</h3> |
| 68 | мечтает о маленькой кактусовой ферме на балконе? | 68 | <p> |
| 69 | </li> | 69 | Вместо оплаты семестра вы сможете купить 4000 пачек Доширака. Это |
| 70 | <li> | 70 | инвестиция в будущее (гастрит). |
| 71 | <b>Путешествовать автостопом по России.</b> Это отличная возможность | 71 | </p> |
| 72 | познакомиться с новыми людьми и увидеть страну своими глазами. | 72 | </div> |
| 73 | </li> | 73 | <div class="card"> |
| 74 | <li> | 74 | <div class="icon">🪖</div> |
| 75 | <b>Написать роман о вампирах и оборотнях.</b> Ведь каждый из нас в | 75 | <h3>Армейский кроссфит</h3> |
| 76 | глубине души немного писатель. | 76 | <p> |
| 77 | </li> | 77 | Бесплатный фитнес-тур на год. Грязевые ванны, марш-броски и стильная |
| 78 | <li> | 78 | одежда! |
| 79 | <b>Стать экспертом по теории заговора.</b> Разве не интересно | 79 | </p> |
| 80 | разгадывать тайны мирового правительства? | 80 | </div> |
| 81 | </li> | 81 | <div class="card"> |
| 82 | <li> | 82 | <div class="icon">🎮</div> |
| 83 | <b>Выиграть в лотерею и больше никогда не работать.</b> По статистке | 83 | <h3>Киберспортивная карьера</h3> |
| 84 | 99.98% игроков останавливаются перед самым выигрышем. | 84 | <p> |
| 85 | </li> | 85 | Зачем защищать диплом, если можно защищать плент Б? Ваш ранг в Доте |
| 86 | <li> | 86 | важнее оценок в зачетке. |
| 87 | <b>Просто потому что можно.</b> Ну а почему бы и нет? Жизнь слишком | 87 | </p> |
| 88 | коротка, чтобы откладывать все на потом. | 88 | </div> |
| 89 | </li> | 89 | <div class="card"> |
| 90 | </ol> | 90 | <div class="icon">🛌</div> |
| 91 | 91 | <h3>Здоровый сон</h3> | |
| 92 | <h2>Как оформить ПСЖ?</h2> | 92 | <p> |
| 93 | <p> | 93 | Забудьте про пары к 8:10. Ваш новый график: подъем в 14:00, завтрак |
| 94 | Все очень просто! Заполните короткую анкету на сайте <a>my.itmo.ru</a> и | 94 | в 15:00, подвиг — завтра. |
| 95 | вдавите по кнопке отправить. Всего один клик отделяет вас от | 95 | </p> |
| 96 | долгожданной свободы! | 96 | </div> |
| 97 | </p> | 97 | <div class="card"> |
| 98 | <b> | 98 | <div class="icon">🚀</div> |
| 99 | Не упустите свой шанс! Оформите ПСЖ прямо сейчас и начните новую главу в | 99 | <h3>Эффект Стива Джобса</h3> |
| 100 | своей жизни! | 100 | <p>Все миллиардеры бросали вузы. Статистика не врет.</p> |
| 101 | </b> | 101 | </div> |
| 102 | 102 | </div> | |
| 103 | <a class="button" href="https://my.itmo.ru/requests/new/2626"> | 103 | </div> |
| 104 | ОФОРМИТЬ ПСЖ | 104 | </section> |
| 105 | </a> | 105 | |
| 106 | 106 | <section id="reviews" class="reviews-section container"> | |
| 107 | <span style="font-size: small"> | 107 | <h2>Истории успеха</h2> |
| 108 | Мы не несем ответственность за принятое вами решение. Сайт создавался | 108 | |
| 109 | исключительно в шуточных целях. | 109 | <div class="carousel-container"> |
| 110 | </span> | 110 | <button class="nav-btn prev-btn" aria-label="Назад"><</button> |
| 111 | </main> | 111 | |
| 112 | 112 | <div class="carousel-wrapper"> | |
| 113 | <footer> | 113 | <div class="carousel"> |
| 114 | <div> | 114 | <div class="review-card"> |
| 115 | <h4>Ссылки</h4> | 115 | <div class="review-header"> |
| 116 | <div> | 116 | <div class="avatar">👮♂️</div> |
| 117 | <a | 117 | <div> |
| 118 | href="https://codeberg.org/igorechek06/expulsiononline/src/branch/pages/LICENSE" | 118 | <h4>Военком Района</h4> |
| 119 | > | 119 | <small>HR-директор</small> |
| 120 | Лицензия | 120 | </div> |
| 121 | </a> | 121 | </div> |
| 122 | </div> | 122 | <p> |
| 123 | <div> | 123 | Мой любимый стартап! Благодаря ПСЖ мы закрыли план по призыву на |
| 124 | <a href="https://codeberg.org/igorechek06/expulsiononline/"> | 124 | 146%! |
| 125 | Исходный код | 125 | </p> |
| 126 | </a> | 126 | </div> |
| 127 | </div> | 127 | |
| 128 | </div> | 128 | <div class="review-card"> |
| 129 | <div style="flex: 1"> | 129 | <div class="review-header"> |
| 130 | <h4>Спонсоры</h4> | 130 | <div class="avatar">💪</div> |
| 131 | <div class="sponsors"> | 131 | <div> |
| 132 | <a href="https://igorek.dev">Автор igorek.dev</a> | 132 | <h4>Виталик</h4> |
| 133 | <a href="https://t.me/olekkorepanov">@olekkorepanov</a> | 133 | <small>Фитнес-тренер</small> |
| 134 | <a href="https://t.me/gigachad_shlepaZ">@gigachad_shlepaZ</a> | 134 | </div> |
| 135 | <a href="https://t.me/gberdyshev">@gberdyshev</a> | 135 | </div> |
| 136 | <a href="https://t.me/j_artem">@j_artem</a> | 136 | <p> |
| 137 | <a href="https://t.me/Extra_Cat_507">@Extra_Cat_507</a> | 137 | Раньше я напрягал мозг, и он болел. Теперь я напрягаю бицуху! В |
| 138 | <a href="https://t.me/night_skumbry">@night_skumbry</a> | 138 | деканате говорили, что я вылечу, а я выжал сотку от груди. |
| 139 | <a href="https://t.me/evgrart_st">@evgrart_st</a> | 139 | Интегралы не помогут тебе в драке, брат. |
| 140 | <a href="https://t.me/YushiNoN">@YushiNoN</a> | 140 | </p> |
| 141 | <a href="https://t.me/Pavtor09">@Pavtor09</a> | 141 | </div> |
| 142 | <a href="https://t.me/oriptal">@oriptal</a> | 142 | |
| 143 | <a href="https://t.me/lissik101">@lissik101</a> | 143 | <div class="review-card"> |
| 144 | </div> | 144 | <div class="review-header"> |
| 145 | </div> | 145 | <div class="avatar">😴</div> |
| 146 | </footer> | 146 | <div> |
| 147 | </body> | 147 | <h4>Игорь</h4> |
| 148 | <small>Ныне свободный маг</small> | ||
| 149 | </div> | ||
| 150 | </div> | ||
| 151 | <p> | ||
| 152 | Раньше я отмечал отсутствующих, теперь я сам отсутствую везде. | ||
| 153 | Мама говорит, я дворник, я говорю — я дзен-буддист. | ||
| 154 | </p> | ||
| 155 | </div> | ||
| 156 | |||
| 157 | <div class="review-card"> | ||
| 158 | <div class="review-header"> | ||
| 159 | <div class="avatar">🎒</div> | ||
| 160 | <div> | ||
| 161 | <h4>Сергей</h4> | ||
| 162 | <small>Senior Delivery Manager</small> | ||
| 163 | </div> | ||
| 164 | </div> | ||
| 165 | <p> | ||
| 166 | Зачем мне диплом инженера, если за доставку пиццы платят больше, | ||
| 167 | чем моему преподу? Желтый рюкзак — мой пропуск в элиту. | ||
| 168 | </p> | ||
| 169 | </div> | ||
| 170 | |||
| 171 | <div class="review-card"> | ||
| 172 | <div class="review-header"> | ||
| 173 | <div class="avatar">📉</div> | ||
| 174 | <div> | ||
| 175 | <h4>Мамкин Трейдер</h4> | ||
| 176 | <small>Криптоинвестор</small> | ||
| 177 | </div> | ||
| 178 | </div> | ||
| 179 | <p> | ||
| 180 | Бросил универ, вложил деньги за обучение в NFT с обезьянами. | ||
| 181 | Теперь живу в коробке, но это коробка от холодильника Liebherr! | ||
| 182 | </p> | ||
| 183 | </div> | ||
| 184 | |||
| 185 | <div class="review-card"> | ||
| 186 | <div class="review-header"> | ||
| 187 | <div class="avatar">👩🏫</div> | ||
| 188 | <div> | ||
| 189 | <h4>Марья Ивановна</h4> | ||
| 190 | <small>Работник студофиса</small> | ||
| 191 | </div> | ||
| 192 | </div> | ||
| 193 | <p> | ||
| 194 | Меньше студентов — меньше ведомостей. Одобряю этот сервис. | ||
| 195 | Продолжайте в том же духе, нам меньше работы. | ||
| 196 | </p> | ||
| 197 | </div> | ||
| 198 | </div> | ||
| 199 | </div> | ||
| 200 | |||
| 201 | <button class="nav-btn next-btn" aria-label="Вперед">></button> | ||
| 202 | </div> | ||
| 203 | </section> | ||
| 204 | |||
| 205 | <section class="cta-section"> | ||
| 206 | <div class="container"> | ||
| 207 | <h2>Готов изменить свою жизнь?</h2> | ||
| 208 | <p>Всего одна кнопка отделяет тебя от полной независимости.</p> | ||
| 209 | <a href="https://my.itmo.ru/requests/new/2626" class="btn btn-primary big-btn"> | ||
| 210 | Оформить ПСЖ | ||
| 211 | </a> | ||
| 212 | </div> | ||
| 213 | </section> | ||
| 214 | |||
| 215 | <section id="sponsors" class="sponsors-section"> | ||
| 216 | <div class="container"> | ||
| 217 | <p class="sponsors-title">Котики</p> | ||
| 218 | </div> | ||
| 219 | |||
| 220 | <div class="marquee-wrapper"> | ||
| 221 | <div class="fade-left"></div> | ||
| 222 | <div class="fade-right"></div> | ||
| 223 | |||
| 224 | <div class="marquee-track"> | ||
| 225 | <a | ||
| 226 | href="https://t.me/kerekobar" | ||
| 227 | target="_blank" | ||
| 228 | class="sponsor-tag tier-vip" | ||
| 229 | >@<span class="kerekobar">kerekobar</span></a | ||
| 230 | > | ||
| 231 | <a href="https://t.me/arslee07" target="_blank" class="sponsor-tag tier-vip" | ||
| 232 | >@arslee07</a | ||
| 233 | > | ||
| 234 | <a href="https://t.me/i11uha" target="_blank" class="sponsor-tag tier-vip" | ||
| 235 | >@i11uha</a | ||
| 236 | > | ||
| 237 | <a href="https://t.me/besvich" target="_blank" class="sponsor-tag tier-vip" | ||
| 238 | >@besvich</a | ||
| 239 | > | ||
| 240 | <a | ||
| 241 | href="https://t.me/cute_kitty29" | ||
| 242 | target="_blank" | ||
| 243 | class="sponsor-tag tier-vip" | ||
| 244 | >@cute_kitty29</a | ||
| 245 | > | ||
| 246 | <a | ||
| 247 | href="https://t.me/andrew_bakradze" | ||
| 248 | target="_blank" | ||
| 249 | class="sponsor-tag tier-vip" | ||
| 250 | >@andrew_bakradze</a | ||
| 251 | > | ||
| 252 | |||
| 253 | <a | ||
| 254 | href="https://t.me/igorechek06" | ||
| 255 | target="_blank" | ||
| 256 | class="sponsor-tag tier-creator" | ||
| 257 | > | ||
| 258 | 👑 @igorechek06 | ||
| 259 | </a> | ||
| 260 | |||
| 261 | <a | ||
| 262 | href="https://t.me/andreW_bOnd38" | ||
| 263 | target="_blank" | ||
| 264 | class="sponsor-tag tier-norm" | ||
| 265 | >@andreW_bOnd38</a | ||
| 266 | > | ||
| 267 | <a | ||
| 268 | href="https://t.me/kakoyto_alesha" | ||
| 269 | target="_blank" | ||
| 270 | class="sponsor-tag tier-norm" | ||
| 271 | >@kakoyto_alesha</a | ||
| 272 | > | ||
| 273 | <a | ||
| 274 | href="https://t.me/safarislava" | ||
| 275 | target="_blank" | ||
| 276 | class="sponsor-tag tier-norm" | ||
| 277 | >Слава ака @safarislava</a | ||
| 278 | > | ||
| 279 | <a href="https://t.me/GalProg" target="_blank" class="sponsor-tag tier-norm" | ||
| 280 | >@GalProg</a | ||
| 281 | > | ||
| 282 | <a | ||
| 283 | href="https://t.me/night_skumbry" | ||
| 284 | target="_blank" | ||
| 285 | class="sponsor-tag tier-norm" | ||
| 286 | >Platypus @night_skumbry</a | ||
| 287 | > | ||
| 288 | <a | ||
| 289 | href="https://t.me/lissik101" | ||
| 290 | target="_blank" | ||
| 291 | class="sponsor-tag tier-norm" | ||
| 292 | >@lissik101</a | ||
| 293 | > | ||
| 294 | <a href="https://t.me/volch0" target="_blank" class="sponsor-tag tier-norm" | ||
| 295 | >@volch0</a | ||
| 296 | > | ||
| 297 | <a href="https://t.me/queelly" target="_blank" class="sponsor-tag tier-norm" | ||
| 298 | >@queelly</a | ||
| 299 | > | ||
| 300 | <a href="https://t.me/j_artem" target="_blank" class="sponsor-tag tier-norm" | ||
| 301 | >@j_artem</a | ||
| 302 | > | ||
| 303 | <a | ||
| 304 | href="https://t.me/goykhmanE" | ||
| 305 | target="_blank" | ||
| 306 | class="sponsor-tag tier-norm" | ||
| 307 | >@goykhmanE</a | ||
| 308 | > | ||
| 309 | |||
| 310 | <a | ||
| 311 | href="https://t.me/kerekobar" | ||
| 312 | target="_blank" | ||
| 313 | class="sponsor-tag tier-vip" | ||
| 314 | >@<span class="kerekobar">kerekobar</span></a | ||
| 315 | > | ||
| 316 | <a href="https://t.me/arslee07" target="_blank" class="sponsor-tag tier-vip" | ||
| 317 | >@arslee07</a | ||
| 318 | > | ||
| 319 | <a href="https://t.me/i11uha" target="_blank" class="sponsor-tag tier-vip" | ||
| 320 | >@i11uha</a | ||
| 321 | > | ||
| 322 | <a href="https://t.me/besvich" target="_blank" class="sponsor-tag tier-vip" | ||
| 323 | >@besvich</a | ||
| 324 | > | ||
| 325 | <a | ||
| 326 | href="https://t.me/cute_kitty29" | ||
| 327 | target="_blank" | ||
| 328 | class="sponsor-tag tier-vip" | ||
| 329 | >@cute_kitty29</a | ||
| 330 | > | ||
| 331 | <a | ||
| 332 | href="https://t.me/andrew_bakradze" | ||
| 333 | target="_blank" | ||
| 334 | class="sponsor-tag tier-vip" | ||
| 335 | >@andrew_bakradze</a | ||
| 336 | > | ||
| 337 | |||
| 338 | <a | ||
| 339 | href="https://t.me/igorechek06" | ||
| 340 | target="_blank" | ||
| 341 | class="sponsor-tag tier-creator" | ||
| 342 | > | ||
| 343 | 👑 @igorechek06 | ||
| 344 | </a> | ||
| 345 | |||
| 346 | <a | ||
| 347 | href="https://t.me/andreW_bOnd38" | ||
| 348 | target="_blank" | ||
| 349 | class="sponsor-tag tier-norm" | ||
| 350 | >@andreW_bOnd38</a | ||
| 351 | > | ||
| 352 | <a | ||
| 353 | href="https://t.me/kakoyto_alesha" | ||
| 354 | target="_blank" | ||
| 355 | class="sponsor-tag tier-norm" | ||
| 356 | >@kakoyto_alesha</a | ||
| 357 | > | ||
| 358 | <a | ||
| 359 | href="https://t.me/safarislava" | ||
| 360 | target="_blank" | ||
| 361 | class="sponsor-tag tier-norm" | ||
| 362 | >Слава ака @safarislava</a | ||
| 363 | > | ||
| 364 | <a href="https://t.me/GalProg" target="_blank" class="sponsor-tag tier-norm" | ||
| 365 | >@GalProg</a | ||
| 366 | > | ||
| 367 | <a | ||
| 368 | href="https://t.me/night_skumbry" | ||
| 369 | target="_blank" | ||
| 370 | class="sponsor-tag tier-norm" | ||
| 371 | >Platypus @night_skumbry</a | ||
| 372 | > | ||
| 373 | <a | ||
| 374 | href="https://t.me/lissik101" | ||
| 375 | target="_blank" | ||
| 376 | class="sponsor-tag tier-norm" | ||
| 377 | >@lissik101</a | ||
| 378 | > | ||
| 379 | <a href="https://t.me/volch0" target="_blank" class="sponsor-tag tier-norm" | ||
| 380 | >@volch0</a | ||
| 381 | > | ||
| 382 | <a href="https://t.me/queelly" target="_blank" class="sponsor-tag tier-norm" | ||
| 383 | >@queelly</a | ||
| 384 | > | ||
| 385 | <a href="https://t.me/j_artem" target="_blank" class="sponsor-tag tier-norm" | ||
| 386 | >@j_artem</a | ||
| 387 | > | ||
| 388 | <a | ||
| 389 | href="https://t.me/goykhmanE" | ||
| 390 | target="_blank" | ||
| 391 | class="sponsor-tag tier-norm" | ||
| 392 | >@goykhmanE</a | ||
| 393 | > | ||
| 394 | </div> | ||
| 395 | </div> | ||
| 396 | </section> | ||
| 397 | </main> | ||
| 398 | |||
| 399 | <footer> | ||
| 400 | <div class="container footer-content"> | ||
| 401 | <p>© 2026 ПСЖ Online</p> | ||
| 402 | <a href="https://codeberg.org/igorechek06/expulsiononline/">Исходный код</a> | ||
| 403 | </div> | ||
| 404 | </footer> | ||
| 405 | |||
| 406 | <script> | ||
| 407 | const slider = document.querySelector(".carousel"); | ||
| 408 | const container = document.querySelector(".carousel-container"); | ||
| 409 | const nextBtn = document.querySelector(".next-btn"); | ||
| 410 | const prevBtn = document.querySelector(".prev-btn"); | ||
| 411 | |||
| 412 | let autoScrollInterval; | ||
| 413 | |||
| 414 | const startAutoScroll = () => { | ||
| 415 | clearInterval(autoScrollInterval); | ||
| 416 | |||
| 417 | autoScrollInterval = setInterval(() => { | ||
| 418 | const cardWidth = slider.querySelector(".review-card").offsetWidth + 24; | ||
| 419 | const maxScroll = slider.scrollWidth - slider.clientWidth; | ||
| 420 | |||
| 421 | if (slider.scrollLeft >= maxScroll - 10) { | ||
| 422 | slider.scrollTo({ left: 0, behavior: "smooth" }); | ||
| 423 | } else { | ||
| 424 | slider.scrollBy({ left: cardWidth, behavior: "smooth" }); | ||
| 425 | } | ||
| 426 | }, 3000); | ||
| 427 | }; | ||
| 428 | |||
| 429 | const stopAutoScroll = () => { | ||
| 430 | clearInterval(autoScrollInterval); | ||
| 431 | }; | ||
| 432 | |||
| 433 | startAutoScroll(); | ||
| 434 | |||
| 435 | container.addEventListener("mouseenter", stopAutoScroll); | ||
| 436 | container.addEventListener("mouseleave", startAutoScroll); | ||
| 437 | |||
| 438 | container.addEventListener("touchstart", stopAutoScroll); | ||
| 439 | container.addEventListener("touchend", startAutoScroll); | ||
| 440 | |||
| 441 | nextBtn.addEventListener("click", () => { | ||
| 442 | const cardWidth = slider.querySelector(".review-card").offsetWidth + 24; | ||
| 443 | slider.scrollBy({ left: cardWidth, behavior: "smooth" }); | ||
| 444 | }); | ||
| 445 | |||
| 446 | prevBtn.addEventListener("click", () => { | ||
| 447 | const cardWidth = slider.querySelector(".review-card").offsetWidth + 24; | ||
| 448 | slider.scrollBy({ left: -cardWidth, behavior: "smooth" }); | ||
| 449 | }); | ||
| 450 | </script> | ||
| 451 | </body> | ||
| 148 | </html> | 452 | </html> |
