Как изменить скорость прокрутки по умолчанию, прокрутку, прокрутку веб-страницы

Я пытаюсь изменить скорость прокрутки по умолчанию, количество и инерцию веб-страницы. Я много говорю, но тщетно

К счастью, позже, в этот день, я нашел плагин, который позволяет нам изменять скорость прокрутки, количество, инерцию ТОЛЬКО В ТОЧНОМ отдельном теге div, а не в целом веб-страницы.

Вот базовый код        

    $(".I-WILL-APPLY-ONLY HERE").mCustomScrollbar({
 set_width:false, 
set_height:false, 
 horizontalScroll:false, 
scrollInertia:550, 
 SCROLLINERTIA:"easeOutCirc", 
 mouseWheel:"auto", 
  autoDraggerLength:true, 
    scrollButtons:{ 
enable:false, 
       scrollType:"continuous", 
     SCROLLSPEED:20, 
      SCROLLAMOUNT:40 
     },
    advanced:{
updateOnBrowserResize:true, 
   updateOnContentResize:false, 
      autoExpandHorizontalScroll:false, 
    autoScrollOnFocus:true 
   },
           callbacks:{
     onScrollStart:function(){}, 
    onScroll:function(){}, 
onTotalScroll:function(){}, 
    onTotalScrollBack:function(){}, 
   onTotalScrollOffset:0, 
whileScrolling:false, 
       whileScrollingInterval:30 
 }
   });



<div id="I-WILL-APPLY-ONLY HERE" class="I-WILL-APPLY-ONLY HERE">
A basic height in pixels would be defined for this element and any content appearing here will have a different scrollspeed,inertia.Mentioning heignt of this div element is compulsary,else i wont show the output    </div>

Проблема в том, что я хочу для всей страницы, а не только для конкретного элемента div. Любая помощь будет оценена. Пожалуйста, помогите мне

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

Ответ 1

Вы можете использовать jQuery для этого, загляните в мою скрипку: http://jsfiddle.net/promatik/NFk2L/

Вы можете добавить прослушиватель событий события прокрутки, помните, что вы можете запретить действие по умолчанию прокрутки... if (event.preventDefault) event.preventDefault();

Затем обработчик этого события, используя анимацию jQuery, выполнит прокрутку...

function handle(delta) {
    var time = 1000;
    var distance = 300;

    $('html, body').stop().animate({
        scrollTop: $(window).scrollTop() - (distance * delta)
    }, time );
}

Вы можете установить время, расстояние (и вы также можете добавить метод ослабления), см. полный пример в fiddle

Ответ 2

Почему бы не обернуть HTML в контейнер div и не настроить таргетинг, как это:

<div class="container">
  <div id="I-WILL-APPLY-ONLY HERE" class="I-WILL-APPLY-ONLY HERE">
<!-- Content here -->
  </div>
</div>

Затем укажите целевой класс контейнера в jQuery:

$('.container').mCustomScrollbar...