serovpochta
@serovpochta
Лысый

Не работают два скрипта вместе?

Имею два скрипта рядом:

$(window).scroll(function(e){
  parallax();
});
function parallax(){
  var scrolled = $(window).scrollTop();
  $('#lk-conteyner').css('background-position-y',+(scrolled*0.5)+'px');
}




$(window).scroll(function(e){
  parallax();
});
function parallax(){
  var scrolled = $(window).scrollTop();
  $('.Robort_svg svg').css('top',-(scrolled*0.2)+'px');
}


Оба создают эффект параллакса
Работает, почему-то, только второй

В чем проблема, как исправить?
Спасибо!
  • Вопрос задан
  • 148 просмотров
Решения вопроса 2
@abberati
frontend-разработчик
ваш вариант совсем не джентельменский: при каждом событии scroll на window будет вешаться новый обработчик события.
$(window).scroll(parallax);
var lkContainer = $('#lk-conteyner');
var robotSVG = $('.Robort_svg svg');
function parallax() {
  var scrolled = $(window).scrollTop();
  lkContainer.css('background-position-y',+(scrolled*0.5)+'px');
  robotSVG.css('top',-(scrolled*0.2)+'px');
}


изучайте теорию, иначе придётся формошлёпить до скончания веков.
Ответ написан
serovpochta
@serovpochta Автор вопроса
Лысый
Тьфу

Совместил их и заработали:

$(window).scroll(function(e){
  parallax();
});
function parallax(){
  var scrolled = $(window).scrollTop();
  $('#lk-conteyner').css('background-position-y',+(scrolled*0.5)+'px');

$(window).scroll(function(e){
  parallax();
});
function parallax(){
  var scrolled = $(window).scrollTop();
  $('.Robort_svg svg').css('top',-(scrolled*0.2)+'px');
}}


Не знаю насколько это по-джентльменски, но работает =)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы