WEB лаборатория DLE » Другое для WEB » jQuery и JavaScript » Событие прокрутки колёсика мыши в JavaScript
Навигация
Популярное
    Статистика

    Материалов: 1789 [+0]
    Пользователей: 685 [+0]

    Всего онлайн : 2
    Пользователей: 0
    Гостей: 2


    Последние комментарии
    ...
    HI-tech:
    0

    Событие прокрутки колёсика мыши в JavaScript

    Автор: lagerzкатегория: Другое для WEB » jQuery и JavaScriptдата: 4-07-2013, 12:37
    Событие прокрутки колёсика мыши в JavaScript


    В javascript есть достаточно много событий. Однако, помимо всем известных, есть ещё событие прокрутки колёсика мыши. К сожалению, с кроссбраузерностью здесь не так всё просто, но несмотря на это, в этой статье я покажу код, который добавляет обработчик события колёсика мыши в javascript.

    Вот код javascript, который, во-первых, добавляет требуемое нам событие на страницу, а также демонстрирует функцию для обработки колёсика мыши.

    // Функция для добавления обработчика событий
    function addHandler(object, event, handler) {
    if (object.addEventListener) {
    object.addEventListener(event, handler, false);
    }
    else if (object.attachEvent) {
    object.attachEvent('on' + event, handler);
    }
    else alert("Обработчик не поддерживается");
    }
    // Добавляем обработчики для разных браузеров
    addHandler(window, 'DOMMouseScroll', wheel);
    addHandler(window, 'mousewheel', wheel);
    addHandler(document, 'mousewheel', wheel);
    // Функция, обрабатывающая событие
    function wheel(event) {
    var delta; // Направление колёсика мыши
    event = event || window.event;
    // Opera и IE работают со свойством wheelDelta
    if (event.wheelDelta) { // В Opera и IE
    delta = event.wheelDelta / 120;
    // В Опере значение wheelDelta такое же, но с противоположным знаком
    if (window.opera) delta = -delta; // Дополнительно для Opera
    }
    else if (event.detail) { // Для Gecko
    delta = -event.detail / 3;
    }
    // Запрещаем обработку события браузером по умолчанию
    if (event.preventDefault) event.preventDefault();
    event.returnValue = false;
    alert(delta); // Выводим направление колёсика мыши
    }


    Теперь, если Вы попытаетесь прокрутить колесо мыши от себя, то увидите "1" во всплывающем окне. А если на себя, то "-1".

    Возможно, не все из Вас знают, что такое Gecko. Gecko - это движок для многих браузеров, одним из самых популярных таких браузеров является Firefox.

    Вот так совсем не просто добавляется обработчик события прокрутки колеса мыши в javascript. Но зато этот код можно смело копировать и использовать его.



    Теги:

    Другие новости по теме:


    Информация
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.