kickflip2009
@kickflip2009

Почему не корректно работает код?

При клике анимация происходит на всех блоках, а нужно чтобы на конкретном.

var image=document.querySelectorAll('.image');
var content = document.querySelectorAll('.content');
var wrap = document.getElementsByClassName('wrap')[0];

var tl = new TimelineMax();
body=document.getElementsByTagName('body')[0];

for(var i =0; i<image.length;i++){
  console.log(image[i]);
 this.onclick=init();
}
function init(){
  return function(){
    tl.add(changeBackground(),1)
    .add(changeImg(),1);
  }
 
}


function changeBackground(){
  var tl = new TimelineMax();
  tl.to(wrap,1,{
    position:'fixed',
    width:'100%',
    height:'100%',
    left:'0px',
    top:'0px',
    backgroundColor:'#fff',
    zIndex:1
  });
  return tl;
}
function changeImg(){

  var tl = new TimelineMax();
  tl.to(content,1,{color:'red',display:'inline-block',top:'0px'},1);
  return tl;
}
  • Вопрос задан
  • 193 просмотра
Пригласить эксперта
Ответы на вопрос 1
@VZVZ
Reverse-Engineer, Software Developer, Architect
> var content = document.querySelectorAll('.content');
Конечно, будет на всех происходить. All же.
Надо внутри onclick использовать this (или еще как), чтобы обращаться только к конкретному элементу...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
06 мая 2024, в 15:37
50000 руб./за проект
06 мая 2024, в 14:54
1000 руб./за проект
06 мая 2024, в 14:53
45000 руб./за проект