Cannot read property 'style' of undefined

172
02 апреля 2019, 17:20

Делаю слайдер и у меня возникла ошибка. Во-первых он не работает, во-вторых одна из кнопок не работает. Появляется ошибка "Сannot read property 'style' of undefined" Код:

var slide = document.getElementById('slider_ul');
var slides = slide.getElementsByTagName('li');  
var currentSlide = 0;

function leftBtn() {
   slides[currentSlide].style.display = 'none';
   currentSlide = (++currentSlide)%slides.length;
   slides[currentSlide].style.display = 'block';
}
function rightBtn() {
   slides[currentSlide].style.display = 'none';
   currentSlide = (--currentSlide)%slides.length;
   slides[currentSlide].style.display = 'block';
}

Ошибка возникает именно на функции rightBtn. Спасибо!

Answer 1

Почему не работает:

var a = -1; 
var b = 3; 
console.log(a, "%", b, "=", a % b);

Как правильно:

var slide = document.getElementById('slider_ul'); 
var slides = slide.querySelectorAll('li');   
var currentSlide = 0; 
 
function leftBtn() { 
   slides[currentSlide].style.display = 'none'; 
   currentSlide = (++currentSlide) % slides.length; 
   slides[currentSlide].style.display = ''; 
} 
 
function rightBtn() { 
   slides[currentSlide].style.display = 'none'; 
   currentSlide = (--currentSlide + slides.length) % slides.length; 
   slides[currentSlide].style.display = ''; 
}
<ul id="slider_ul"> 
<li>First</li> 
<li style="display:none">Second</li> 
<li style="display:none">Third</li> 
</ul> 
 
<button type="button" onclick="rightBtn()">Previous</button> 
<button type="button" onclick="leftBtn()">Next</button>

READ ALSO
Row 1 doesn&#39;t contain data of all columns

Row 1 doesn't contain data of all columns

Пытаюсь импортировать csv файл в MySQLВот сам файл :

226
Как лучше разбивать таблицу InnoDB?

Как лучше разбивать таблицу InnoDB?

К примеру, есть таблица "products"Для продуктов нужно добавить поле "status" с их статусом (на модерации|активный|заблокирован)

172
Выпадающие горизонтальные подменю на css

Выпадающие горизонтальные подменю на css

Подскажите, пожалуйста, как правильно написать css код для 2,3 и последующих подменю, чтобы при наведении на Wordpress, далее, при наведении на Tutorials...

211
Текст посреди 2-х кнопок

Текст посреди 2-х кнопок

Всех приветствуюПытаюсь сделать текст посреди 2-х кнопок, типа такого:

141