Стрелочные функции
Я пока ими не пишу, в будущем обязательно
но не могу понять что я не правильно написал сначала стрелочная, она работает, потом я ее переписал как мне понятнее и она не работает.
let activeSlide = n => {
for(slide of slides){
slide.classList.remove("active");
}
slides[n].classList.add("active");
}
let nextSlide = () => {
if(index == slides.length -1){
index = 0;
activeSlide(index);
}
else{
index++;
activeSlide(index);
}
}
next.addEventListener("click", nextSlide);
let activeSlide = function(n){
for(let i=0; i<slides.length; i++){
slides.classList.remove("active");
}
slides[n].classList.add("active");
}
let nextSlide = function(){
if (index == slides.length - 1){
index = 0;
activeSlide(index);
}
else{
index++;
activeSlide(index);
}
}
next.addEventListener("click", nextSlide);
|
slides.classList.remove("active");
->
slides[i].classList.remove("active");
|
Цитата:
|
Цитата:
|
Цитата:
Если вы используете цикл for (i=..., то к элементу массива надо обращаться slides[i] (стр 27) |
dot.forEach((item, indexDot) => {
item.addEventListener("click", () =>{
index = indexDot;
activeSlide(index);
activedots(index);
})
})
dot.forEach((item, indexDot) function(){
item.addEventListener("click", function(){
index = indexDot;
activeSlide(index);
activedots(index);
})
})
Вот тут тоже не могу увидеть ошибку |
dot.forEach( function (item, indexDot){
item.addEventListener("click", function(){
let index = indexDot; // Зачем?
activeSlide(index); // activeSlide( indexDot)
activedots(index); // activedots(indexDot)
})
})
|
Сергей Ракипов,
строка 13 параметры функции отсутствуют, function( здесь пусто!!!). |
voraa,
А почему нужно function в начало нужно было поставить и там у вас скобки не хватило, но я вставил. |
Цитата:
|
Цитата:
function (item, indexDot) так верно |
Цитата:
Все постепенно, не загружаю себя |
Цитата:
function (параметры) {тело} |
Цитата:
|
dot.forEach( )
В forEach надо передать функцию, которая будет применяться к каждому элементу. Вот мы и пишем эту функцию
function (item, indexDot){
item.addEventListener("click", function(){
activeSlide(indexDo);
activedots(indexDo);
})
}
|
Все понял, спасибо за помощь
|
У меня не хватает знание синтаксис помогите переписать на "нормальный старый" вид
function parallax(event){
this.querySelectorAll(".layer").forEach(layer => {
let speed = layer.getAttribute("data-speed");
layer.style.transform = `translateX(${event.clientX*speed/1000}px)`
});
}
document.addEventListener("mousemove", parallax);
вот это
(layer => {
let speed = layer.getAttribute("data-speed");
`translateX(${event.clientX*speed/1000}px)`
|
https://es6console.com/k9meb3ie/
Вставляй свой код, тыкай Transform, и отстань от нас. Лучше конечно изучи javascript, но тут похоже всё гибло. |
Сергей Ракипов,
layer => заменить на function(layer) |
Цитата:
|
Цитата:
|
Не понимаю логику синтекса
"translateY(" + event.clientY * speed/1000 + "px)"
Могу понять первые ковычки, но не могу понять почему так вторые расположены |
Сергей Ракипов,
задача вырезать число и заменить на переменную. было "translateY(10px)" жмак "translateY( px)" тумк "translateY(" "px)" вжик "translateY(" + "px)" "translateY(" + number + "px)" "translateY(" + event.clientY * speed/1000 + "px)" |
Цитата:
Все понял, я просто думал, вжмак, вжмак, а потом вжик )))) Спасибо )) |
Сергей Ракипов, рони,
было "translateY(10px)" динь `translateY(10px)` дррррррррррррррр-др-др-др-др `translateY(${}px)` потом этот ваш вжик `translateY(${number}px)` `translateY(${event.clientY * speed / 1000}px)` |
Цитата:
|
Сергей Ракипов,
Шаблонные строки |
Сергей Ракипов,
Кавычки |
рони,
Спасибо это очень полезно |
| Часовой пояс GMT +3, время: 01:25. |