Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Обработка событий клавиатуры (https://javascript.ru/forum/events/3433-obrabotka-sobytijj-klaviatury.html)

MaxPayne 18.04.2009 22:40

Да, window.onscroll было бы логично, как с правой кнопкой мыши. Но увы..

У меня див начинает перемещаться вниз только в тот момент, когда весь скролл вниз опустится. То есть если можно скроллировать вниз - то скроллируется, если нельзя - то двигается див. Поэтому вариант через scrollTo тоже не подойдет.

Kolyaj 18.04.2009 22:42

Лучше перехватывать и отменять keydown.

MaxPayne 18.04.2009 22:49

Сейчас попробовал вот так:
window.onscroll = null;

Уже лучше. По-крайней мере одновременно перемещается и див, и скроллбар. Причем скроллбар перемещается на более меньший промежуток, но все равно заметно.

Riim 18.04.2009 22:49

Цитата:

Сообщение от Kolyaj
Лучше перехватывать и отменять keydown.

О, точно, прямо из обработчика нажатия false вернуть надо.

Riim 18.04.2009 22:53

И вот еще:

e.stop = function() {
				if (originalEvent.preventDefault) {
					originalEvent.preventDefault();
					originalEvent.stopPropagation();
				} else {
					originalEvent.returnValue = false;
					originalEvent.cancelBubble = true;
				}
				return e;
			};


Только переделать надо.

MaxPayne 18.04.2009 23:07

Цитата:

Сообщение от Riim (Сообщение 17064)
Только переделать надо.

Что именно? просто я еще далек от всего того, что вы обсуждаете с Николаем. Делаю только первые шаги.

Riim 18.04.2009 23:13

В функции, которая прикреплена к document.onkeypress в самом конце return false;
А в самом начале:
function (e) {
    if (e.preventDefault) {
        e.preventDefault();
        e.stopPropagation();
    } else {
        e.returnValue = false;
        e.cancelBubble = true;
    }

MaxPayne 18.04.2009 23:15

Сейчас попробую.

Тыкнул в боди onscroll="scrollTo(0,0);". Не алло, т.е. не красиво.

MaxPayne 18.04.2009 23:20

Ну что сказать?! Молодцы, парни! Каждому по +1.
Все работает аккуратно и красиво.

Riim 18.04.2009 23:23

Цитата:

Сообщение от MaxPayne
Все работает аккуратно и красиво.

Выкладывай архивом. Поглазеть хочется.
зы: ничего, что на ты?


Часовой пояс GMT +3, время: 03:26.