PDA

Просмотр полной версии : двойное срабатывание onKeyDown в firefox


TTS
15.10.2009, 13:19
Никто не сталкивался?
Есть флешка, в которой используются кнопы "вверх" "вниз" "влево" "вправо"
в ИЕ и Опере нормально работает.
Firefox каждое нажатие воспринимает как два нажатия. НО! если флешку открывать этим же фф напрямую (т.е. если в строке адреса набить http://......./blabla.swf) работает нормально
Мозги клинит.

ahimsa
15.10.2009, 13:27
Помнится, помогла замена onPress на onRelease, попробуйте.

TTS
15.10.2009, 13:34
мне не поможет, т.к. нужно и кратковременное нажатие, и удержание

Bitcoolman
15.10.2009, 13:56
Mouse.onMouswUp не пробовал? У самого такая проблема была...это помогло.

TTS
15.10.2009, 13:59
Mouse.onMouswUp не пробовал? У самого такая проблема была...это помогло.
как его применить к onKeyDown?

Bitcoolman
15.10.2009, 14:06
сорри, не правильно понял.

wvxvw
15.10.2009, 14:40
В AS3 есть похожая проблема, она не связана с браузерами, просто keyDown диспатчится с каким-то промежутком все время пока кнопка нажата. Не знаю почему так сделали, но вобщем, принцип такой же:
в keyDown записываем последнюю нажатую кнопку в массив предварительно убедившись, что ее там не было, в keyUp удаляем ее из массива. Если в keyDown кнопка уже была в массиве - значит мы получили "ненужное" событие, и соответственно, не будем его обрабатывать.

TTS
15.10.2009, 15:22
оно диспатчится каждые 0,1 секунду с паузой в 0,5сек после первого диспатча, если мне память не изменяет.

С этим я уже разобрался
Ща парюсь над тем, как отключить скролл страницы в ИЕ при нажатии на стрелки

wvxvw
15.10.2009, 16:05
Читать тут:
http://www.webreference.com/js/column9/newkeyboardevents.html
Да, еще можно тут, если просто ради любопытства:
http://unixpapa.com/js/key.html
Особенно понравилась последняя строчка:
Hope for sanity exists, with the new key event handling specifications in DOM3, but so far only Safari implements them.

TTS
18.10.2009, 01:08
Читать тут:
http://www.webreference.com/js/column9/newkeyboardevents.html

работает только когда фокус не на флешке

Upd
Работает при wmode=window, но тогда менюшки разворачиваются под флэшку :wacko: