Изменение скорости прокрутки для определенного раздела и / или нажатия кнопки (SCROLLIFY)

#jquery #jquery-scrollify

#jquery #jquery-прокручивать #jquery-scrollify

Вопрос:

Два вопроса

  1. Как следует из названия, возможно ли с помощью scrollify установить разную скорость прокрутки для разных разделов?

  2. У меня также есть кнопка «scrollify.next», где я попытался изменить скорость прокрутки, но понял, что я не эксперт по jquery / js. Мне удалось перезаписать настройки скорости прокрутки в событии кнопки, но как мне правильно вернуть настройки скорости прокрутки после завершения события нажатия? Как и сейчас, вся прокрутка после нажатия кнопки будет соответствовать новой настройке.

Я понимаю, что мне нужно еще раз заново выучить jquery, хех!

 $(".next-btn").click(function(e) {
    e.preventDefault();
    $.scrollify.setOptions({
        scrollSpeed: 2500,
    });
    $.scrollify.next();
});
  

Документация для scrollify
https://github.com/lukehaas/Scrollify

Заранее спасибо!

Комментарии:

1. Код выглядит нормально, не могли бы вы предоставить больше информации о вашем html?

2. Да, как я уже сказал, этот код работает. Но это навсегда изменяет настройку скорости прокрутки для всех разделов после того, как я нажимаю кнопку. Я использую только одно событие этой кнопки, чтобы иметь эту конкретную скорость прокрутки, после перемещения экрана я хочу, чтобы скорость прокрутки вернулась к 800.

3. Затем вы можете определить глобальную переменную для scrollSpeed , например scrollSpeed: x . Если текущий экран Windows == следующий экран, который вы хотите, установите x = 800…

4. Извините, но для меня это китайский: / Мы все еще говорим о Scrollify?

5. Я говорю о js .. вы можете определить переменную для скорости прокрутки, например scrollSpeed: x . При нажатии кнопки далее присвоите x новому значению

Ответ №1:

Используйте обратный вызов «после». Всякий раз, когда Scrollify переходит к разделу, он запускает обратный вызов after, так что вы можете определить новую скорость прокрутки в пределах этого для любого раздела, который вы хотите.

Комментарии:

1. Спасибо за ваш ответ. Я пытаюсь понять, как использовать «after:function(){}». Документация очень расплывчатая, и поскольку я не являюсь разработчиком JS / jquery (только базовые знания), мне трудно понять, как применить настройки внутри этого обратного вызова. Т.Е. Как настроить таргетинг на определенные разделы, изменить скорость и как ее использовать. Всякий раз, когда я помещаю что-либо в обратный вызов after, скрипт перестает работать, так что, я думаю, я делаю что-то не так. Вот что я создал. pastebin.com/gAfQRs9H

2. Попробуйте посмотреть исходный код некоторых примеров страниц Scrollify, например: проекты. lukehaas.me/scrollify/examples/apple для управления анимацией в каждом разделе используется обратный вызов after

3. Спасибо Люку Хаасу. Я посмотрю, как вы это сделали, и извлеку из этого урок. Ты потрясающий 🙂