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

Слайдер не переключается js

06.02.2017, 14:14. Показов 1565. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В чем может быть проблема?

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
<script type="text/javascript" src="javascript.js"></script>
<title>Страница</title>
</head>
<body>
<div class="wrapper">
<ul id="slides">
    <li class="slide showing">Slide 1</li>
    <li class="slide">Slide 2</li>
    <li class="slide">Slide 3</li>
    <li class="slide">Slide 4</li>
    <li class="slide">Slide 5</li>
</ul>
</div>
</body>
</html>
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
* {
    margin: 0px;
    padding: 0px;
}
.wrapper {
    width: 1000px;
    height: 2000px;
    margin: 0px auto;
    background: yellow;
}
#slides{
    position: relative;
    height: 150px;
    padding: 0px;
    margin: 0px;
    list-style-type: none;
}
 
.slide{
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 1;
 
    -webkit-transition: opacity 1s;
    -moz-transition: opacity 1s;
    -o-transition: opacity 1s;
    transition: opacity 1s;
}
 
.showing{
    opacity: 1;
    z-index: 2;
}
.slide{
    font-size: 40px;
    padding: 40px;
    box-sizing: border-box;
    background: #333;
    color: #fff;
}
 
.slide:nth-of-type(1){
    background: red;
}
.slide:nth-of-type(2){
    background: orange;
}
.slide:nth-of-type(3){
    background: green;
}
.slide:nth-of-type(4){
    background: blue;
}
.slide:nth-of-type(5){
    background: purple;
}
Javascript
1
2
3
4
5
6
7
8
9
var slides = document.querySelectorAll('#slides .slide');
var currentSlide = 0;
var slideInterval = setInterval(nextSlide,2000);
 
function nextSlide(){
    slides[currentSlide].className = 'slide';
    currentSlide = (currentSlide+1)%slides.length;
    slides[currentSlide].className = 'slide showing';
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.02.2017, 14:14
Ответы с готовыми решениями:

Не переключается канал wi-fi
Собственно переключаю в ручную канал wi-fi на роутере, он долго думает и делает вид, что...

Не переключается видеокарта
Приобрёл недавно ноутбук HP 15-ba526ur A8-7410 2.2ГГц 4 ядра 8 гб оперативы Radeon R5 M430 2ГБ...

Не переключается клавиатура
ne pereklyuchaetsya klaviatura cherez 10 minut posle perezagruski klaviatury ne mogu vylozhit'...

ИБП не переключается
Всем ку. Вообщем неделю назад появилась такая проблема. ИБП работает, но не переключается на...

4
Эксперт JSЭксперт HTML/CSS
3825 / 2675 / 1521
Регистрация: 12.07.2015
Сообщений: 6,672
Записей в блоге: 4
06.02.2017, 14:59 2
Все переключается. Поместите js-код перед закрывающим тегом </body>
1
0 / 0 / 0
Регистрация: 20.09.2016
Сообщений: 45
06.02.2017, 15:12  [ТС] 3
Ок, а как тогда сделать, чтобы код js был в документе js?
0
Эксперт JSЭксперт HTML/CSS
3825 / 2675 / 1521
Регистрация: 12.07.2015
Сообщений: 6,672
Записей в блоге: 4
06.02.2017, 15:22 4
Лучший ответ Сообщение было отмечено Ilikeit как решение

Решение

Javascript
1
2
3
4
5
6
7
8
9
10
document.addEventListener("DOMContentLoaded", function() {
    var slides = document.querySelectorAll('#slides .slide');
    var currentSlide = 0;
    var slideInterval = setInterval(nextSlide, 2000);
    function nextSlide() {
        slides[currentSlide].className = 'slide';
        currentSlide = (currentSlide + 1) % slides.length;
        slides[currentSlide].className = 'slide showing';
    }
});
А лучше просто загружать скрипт, как я выше написал:
HTML5
1
2
3
<!-- ... -->
<script src="javascript.js"></script>
</body>
1
13 / 13 / 16
Регистрация: 31.12.2015
Сообщений: 85
06.02.2017, 15:39 5
Ilikeit,
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
;(function () {
    'use strick';
    function Slider (slideList, activeSlide, interval) {
        this.slideList = document.querySelectorAll(slideList);
    this.activeSlide = activeSlide;
        this.interval = interval;
    }
    Slider.prototype.nextSlide = function () {
        var i = 0, length = this.slideList.length - 1;
        setInterval(function () {
            this.slideList[i].classList.remove(this.activeSlide);
            if (i === length) {i = -1;}
            i++;
            this.slideList[i].classList.add(this.activeSlide);
        }.bind(this), this.interval);
    };
    var slide = new Slider('.slide', 'showing', 1000);
    slide.nextSlide();
})();
0
06.02.2017, 15:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.02.2017, 15:39
Помогаю со студенческими работами здесь

Криво переключается
Заметил такую проблему,криво переключается данный плагин слайд-шоу. Кто нибудь сталкивался с этим и...

ИБП не переключается
Всем ку. Вообщем неделю назад появилась такая проблема. ИБП работает, но не переключается на...

Не переключается цвет Label
Есть задача, мне в ней надо постепенно подсвечивать определенные лейблы цветом Я сделал это так ...

Не переключается изображение. C++ Builder 6
Один баг у меня в программе, нужно устранить. Всего лишь один баг. А баг такой. Через DBNavigator...

Самопроизвольно переключается DPI
На проводной мышке самопроизвольно переключается DPI. Чаще во время игры, но также и при типичном...

Браузер переключается На smartin. ru
Скачивал торрент а оказался вирус, и теперь поисковая система и браузер переходит на smartin.ru и...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru