Nano Hash - криптовалюты, майнинг, программирование

Замедлить прокрутку до верхнего события с помощью анимации jQuery

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

Вот как я пытался это сделать, но он не работает, он прокручивается очень быстро.

 $('a[href=#top]').click(function () {
        $('body').animate({
                scrollTop: 0
        },
        50);
});

Я хочу замедлить это.

23.01.2010

  • Вы можете решить это с помощью CSS, попробуйте это решение 30.08.2019

Ответы:


1
$('a[href=#top]').click(function(){
    $('html, body').animate({scrollTop:0}, 'slow');
});

Возможно?

23.01.2010
  • Любая идея, почему $('html, body') требуется? Я попробовал это с $(window), но, похоже, это не дало никакого эффекта, чего я ожидал увидеть, поскольку (если я правильно помню) это объект окна, который отслеживает позицию прокрутки? 21.03.2012
  • окно veiwport, но вам нужно анимировать документ html, также вам не нужно тело $(html).animate({scrollTop: $(#whatever_id_you_want_to_go_to).offset().top}, 1200); 03.05.2012
  • Я думаю, вам нужно body, так как html не будет работать во всех браузерах. 21.09.2012
  • поэтому вам нужны и тело, и html для поддержки всех браузеров? 07.05.2013
  • Как насчет добавления preventDefault, чтобы предотвратить мигание страницы перед прокруткой вверх? 22.07.2013
  • body используется браузерами webkit, html используется firefox. 01.04.2014
  • На данный момент Chrome и Safari отлично работают только с html. 30.07.2014
  • @dmnd Ты уверен? У меня не работает в Chrome 50.0.2661.94. Я тестирую это: jsfiddle.net/8uswq8u3 03.05.2016
  • @AdamTaylor, этому ответу больше 6 лет, возможно, кое-что изменилось 05.05.2016
  • @ant Я не отвечал на ответ; Я отвечал на комментарий, который был сделан менее двух лет назад. 05.05.2016
  • Лучше быть в безопасности, чем сожалеть, и использовать html и body, использование обоих не должно вызывать сбоев. 18.04.2018
  • Просто к вашему сведению: в наши дни было бы лучше, если бы вы сделали $(document.scrollingElement), потому что в наши дни есть такая опора. 20.11.2018

  • 2

    Когда вы передаете 50 в качестве второго параметра для анимации, это составляет 50 миллисекунд. См. документацию по animate. Либо передайте большее число, либо, как предложил c0mrade, просто передайте 'slow' .

    23.01.2010

    3

    вы можете установить время для прокрутки вверх

    $('a[href=#top]').click(function(){
     $('body').animate({
         scrollTop: 0},4000);});
    
    31.08.2016

    4
    $('a[href=\\#top]').click(function(){
      $('body').animate(
        {
          scrollTop: 0
        }, 
        2000
      );
    });
    

    # следует экранировать \\#.

    24.08.2017
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..