Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 11.08.2021, 10:22
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,745

giwuf,
А вы можете посмотреть, что выдает document.body.getBoundingClientRect()
в Сафари? Например, алертом.
Ответить с цитированием
  #12 (permalink)  
Старый 24.08.2021, 17:17
Профессор
Отправить личное сообщение для giwuf Посмотреть профиль Найти все сообщения от giwuf
 
Регистрация: 16.05.2017
Сообщений: 167

Сообщение от voraa Посмотреть сообщение
giwuf,
А вы можете посмотреть, что выдает document.body.getBoundingClientRect()
в Сафари? Например, алертом.
Сработало при использовании полифила
// polyfilled smooth scrolling for IE, Edge & Safari
const smoothScrollTo = (to, duration) => {
  const element = document.scrollingElement || document.documentElement,
    start = element.scrollTop,
    change = to - start,
    startDate = +new Date();

  // t = current time
  // b = start value
  // c = change in value
  // d = duration
  const easeInOutQuad = (t, b, c, d) => {
    t /= d / 2;
    if (t < 1) return c / 2 * t * t + b;
    t--;
    return -c / 2 * (t * (t - 2) - 1) + b;
  };

  const animateScroll = _ => {
    const currentDate = +new Date();
    const currentTime = currentDate - startDate;
    element.scrollTop = parseInt(easeInOutQuad(currentTime, start, change, duration));
    if (currentTime < duration) {
      requestAnimationFrame(animateScroll);
    } else {
      element.scrollTop = to;
    }
  };
  animateScroll();
};
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
innerHTML для TR - чем заменить? Непонятливый Общие вопросы Javascript 2 31.10.2012 15:04
IE innerHTML или innerText чем заменить? vitorrio Общие вопросы Javascript 9 07.09.2012 23:47
чем заменить onChange? Viral Элементы интерфейса 13 04.12.2011 11:32
Чем заменить execCommand shtopor Javascript под браузер 9 05.11.2011 16:20
Чем можно заменить свойство contentEditable=true ? iMichaeli7 Javascript под браузер 5 20.10.2010 11:27