Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.07.2012, 18:42
Люблю js, jquery
Отправить личное сообщение для dadli Посмотреть профиль Найти все сообщения от dadli
 
Регистрация: 23.08.2011
Сообщений: 214

кросбраузерная включеня/отключеня функционала ролик мыши
здравствуите, есть две кнопки, для включеня/отключеня врашеня ролика.

отключение сделал так и работает:
var scroll_off = function(e) {
	e.preventDefault();
};
			
$("#disable_scroll").on("click", function () {
			if ("onmousewheel" in document) { // для всех браузерах кроме Фирефох
				document.onmousewheel = scroll_off;
			} else { // для Фирефох
				document.addEventListener('DOMMouseScroll', scroll_off);
			}
});



но не получается снова включить врашеня ролика, не получается толко Фирефохе, в осталних браузерах работает, не можете сказать где я ошибаю? почему в фирефох-е не включается ролик снова?
вот код:
var scroll_on = function (e) {};
		
$("#enable_scroll").on("click", function () {
				if ("onmousewheel" in document) {
					document.onmousewheel = scroll_on;
				} else {
					document.addEventListener('DOMMouseScroll', scroll_on);
				}
});

Последний раз редактировалось dadli, 04.07.2012 в 18:45.
Ответить с цитированием
  #2 (permalink)  
Старый 04.07.2012, 18:53
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

<script type="text/javascript">
var scroll_off = function(e) {
	e.preventDefault();
};
			
$("#disable_scroll").on("click", function () {
			if ("onmousewheel" in document) { // для всех браузерах кроме Фирефох
				document.onmousewheel = scroll_off;
			} else { // для Фирефох
				document.addEventListener('DOMMouseScroll', scroll_off);
			}
});


var scroll_on = function (e) {};
		
$("#enable_scroll").on("click", function () {
				if ("onmousewheel" in document) {
					document.onmousewheel = function(e){}
				} else {
					document.removeEventListener('DOMMouseScroll', scroll_off);
					document.addEventListener('DOMMouseScroll', scroll_on);
				}
});




</script>
Ответить с цитированием
  #3 (permalink)  
Старый 04.07.2012, 18:58
Люблю js, jquery
Отправить личное сообщение для dadli Посмотреть профиль Найти все сообщения от dadli
 
Регистрация: 23.08.2011
Сообщений: 214

Deff,
я очень благодарен вам, работает отлично
Ответить с цитированием
  #4 (permalink)  
Старый 04.07.2012, 19:16
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от dadli
я очень благодарен
Я возможно поспешил
думаю стоит добавить
document.removeEventListener('DOMMouseScroll', scroll_on); и в первую функцию

Последний раз редактировалось Deff, 04.07.2012 в 22:03.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Немного Юмора - Гуртовщики Мыши antonM Оффтопик 12 23.03.2012 20:04