Как сгладить прокрутку двух элементов одновременно, используя scrollIntoView ()? - PullRequest
1 голос
/ 07 апреля 2019

Я пытаюсь сгладить прокрутку двух div одновременно, используя scrollIntoView ().Я пробовал эти два способа, но только последний div называется scrolls:

Попытка 1: функция с двумя параметрами: только второй параметр прокручивает

function precedent_scroll(link, section) {
  document.getElementById(link).scrollIntoView({behavior: "smooth"});
  document.getElementById(section).scrollIntoView({behavior: "smooth"});
}

Попытка 2: вызов функции обратноназад: только прокрутка "section2_IDname"

function precedent_scroll(section) {
  document.getElementById(section).scrollIntoView({behavior: "smooth"});
}

$("#id").click(function() {precedent_scroll("section1_IDname"), precedent_scroll("section2_IDname")});

Это возможно только при использовании scrollIntoView ()?

1 Ответ

0 голосов
/ 08 апреля 2019

Получил работать с jQuery:

function double_scroll(id1, id2) {
  var id1_parent_st = $([id1 parent]).scrollTop();
  var id2_parent_st = $([id2 parent]).scrollTop();
  $([id1 parent]).animate({
    scrollTop: $(id1).position().top + id1_parent_st
  }, 500, function(){
  });
  $([id2 parent]).animate({
    scrollTop: $(id2).position().top + id2_parent_st
  }, 500, function(){
  });
}

$([div]).click(function() {double_scroll("#p1_link", "#p1_section")});
...