окно прокрутки при движении мыши - PullRequest
5 голосов
/ 29 июня 2011

Привет всем

Я имею в виду, когда мышь движется к краю окна (x или y или оба), я хочу, чтобы страница прокручивалась, и когда мышь перестает двигаться Я хочу, чтобы страница перестала прокручиваться.

Существует множество примеров прокрутки, основанных на использовании события onClick или зоны прокрутки на краю окна, но не сильно на основе движения курсор мыши.

Любая помощь будет высоко ценится.

1 Ответ

5 голосов
/ 29 июня 2011

Веб-страницы уже разработаны для прокрутки с использованием полосы прокрутки, клавиш page / home / end / arrow и т. Д. Есть ли какая-либо причина, которой недостаточно для вашей страницы?Обычно нежелательно менять ожидаемую функциональность.

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

// Variables for current position
var x, y;

function handleMouse(e) {
  // Verify that x and y already have some value
  if (x && y) {
    // Scroll window by difference between current and previous positions
    window.scrollBy(e.clientX - x, e.clientY - y);
  }

  // Store current position
  x = e.clientX;
  y = e.clientY;
}

// Assign handleMouse to mouse movement events
document.onmousemove = handleMouse;
...