oop/ вопросы с class()
Здрасте, подскажите, пожалуйста, как мне вставить в new Timer(), btnNext, чтобы метод начал работать...
см. два последних, в первом не по делу написано..........)) window.onload = function(e) { new Timer({ images: '.gallery img', rate: 1000, auto: true, }); } class Timer { constructor(obj) { let slider = this, i = 0; this.images = document.querySelectorAll(obj.images); this.rate = obj.rate || 1500; this.auto = obj.auto; this.btnNext = obj.btnNext; } btnNext() { slider.images[i].classList.remove('showed'); i++; if(slider.images[i] >= slider.images.length) { i = 0; } slider.images[i].classList.add('showed'); } if(slider.auto) { setInterval(slider.btnNext, slider.rate) } } и еще в строке 26 пишет ошибку:"Uncaught SyntaxError: Unexpected token . ". function Slider (obj) { let slider = this, i = 0; this.images = document.querySelectorAll(obj.images); this.rate = obj.rate; this.auto = obj.auto; this.next = function() { slider.images[i].classList.remove('showed'); i++; if (i>=slider.images.length) { i = 0; } slider.images[i].classList.add('showed'); } if (slider.auto) { setInterval(slider.next, slider.rate); } }; new Slider({ images:'.gallery img', rate: 1000, auto: true, }); сверху рабочий)))))))) переписал 1-й вариант, вот так: class Timer { constructor(obj) { this.images = document.querySelectorAll(obj.images); this.rate = obj.rate || 1500; this.auto = obj.auto; this.run(); let i = 0;// здесь var наверно, если что... let не увидит... } btnNext(){ let i = 0; this.images[i].classList.remove('showed'); i++; if(i >= this.images.length) { i = 0; } this.images[i].classList.add('showed'); } run() { if(this.auto){ setInterval(this.btnNext,this.rate); } } }; new Timer({ images: '.photos img', rate: 1000, auto: true, }); переписал еще раз........ теперь вопрос в стр: 7 и стр: 11, куда и как поставить счетчик?......, или, еще где-то, таймер работает, не может прочитать 0 не найден......тут должен, типа быть массив, или в объекте.. короче, запутался)))) кстати, убрал: let slider = this, дело пошло, это костыль какой-то? |
Часовой пояс GMT +3, время: 21:01. |