Действие при прокрутке колесика мышки

Действие при прокрутке колесика мышкиХочу показать короткий, но весьма полезный кусочек javascript кода. Редко, но бывает необходимо отловить прокрутку колесика мышки и навесить на это действие обработчик.

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

// добавляем обработчики для разных браузеров
addHandler(window, 'DOMMouseScroll', actionScroll);
addHandler(window, 'mousewheel', actionScroll);
addHandler(document, 'mousewheel', actionScroll);  

// добавление обработчика
/*
object - объект браузера
event - событие в браузере
action - функция, сработающия при прокрутке колесика
*/
function addHandler(object, event, action) {
	if (object.addEventListener) {
		object.addEventListener(event, action, false);
	}else if (object.attachEvent) {
		object.attachEvent('on' + event, action);
	}
	//else @todo действие если не поддерживается обработчик
}

// Эта функция будет вызвана 
// при прокрутке колесика
function actionScroll() {
	alert('scrolling');
}
Рассказать друзьям:


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*