|
|
|
|
|
для: 12345
(03.11.2006 в 18:08)
| | вроде так
<div onKeyDown="keyDown()"></div>
|
? | |
|
|
|
|
|
|
|
для: SHAman
(03.11.2006 в 17:58)
| | При таком вызове - onkeydown="key_down();" - доступа к объекту события не будет ни в каких браузерах. И отмены действия по умолчанию - тоже. Вызывать нужно как обработчик.
document.onkeydown=key_down; //а из body убрать
|
<body>
<script>
document.onkeydown=key_down;
function key_down(ev){if(!ev)ev=event;
if(ev.preventDefault) ev.preventDefault();
else ev.returnValue = false;
alert(ev.keyCode);
}
</script>
| Это для всех бр-ров. Дальше, наверное, всё будет в порядке. Кроме того, что некоторые клавиши отменить будет нельзя. | |
|
|
|
|
|
|
|
для: Lelik
(03.11.2006 в 17:51)
| | А почему она должна не загружаться? У меня все работает в этом месте как раз. И все прекрасно и в ИЕ и Опере.
Проблема здесь:
и здесь:
onhelp="my_help(); return false;"
|
оба места правильно работают в ИЕ и неправильно в других местах:) | |
|
|
|
|
|
|
|
для: SHAman
(03.11.2006 в 17:47)
| |
<body onkeydown="key_down();" onhelp="my_help(); return false;" id="all_body" onload="cursor_cmdl(); float_cmd(); get_links('page_content')">
|
а разве после точки с запятой функция загружается?
<body onkeydown="key_down();" onhelp="my_help(); return false;" id="all_body" onload="cursor_cmdl(), float_cmd(), get_links('page_content')">
|
| |
|
|
|
|
|
|
|
для: SHAman
(03.11.2006 в 16:15)
| | если найдешь, незабудь сказать, чего за событие такое ;) | |
|
|
|
|
|
|
|
для: 12345
(03.11.2006 в 17:27)
| | У меня Опера 9. Но хотелось бы, если честно, чтоб под 8 тоже работало....
Вот как у меня это выглядит в оригинале:
html:
<body onkeydown="key_down();" onhelp="my_help(); return false;" id="all_body" onload="cursor_cmdl(); float_cmd(); get_links('page_content')">
|
js:
function key_down(e) {
if(e.preventDefault) e.preventDefault();
else e.returnValue = false;
var key=event.keyCode;
if (key==13) {
var go_to=d.all['cmd'].innerText;
go_to=parseInt(go_to);
if (go_to <= my_links.length-1) {
document.location=my_links[go_to];
}
else {
d.all.cmd.innerText='';
my_win("my_error","1","300","100");
}
}
else {other_keys()}
}
|
| |
|
|
|
|
|
|
|
для: SHAman
(03.11.2006 в 16:47)
| | Где-то с Оперой такое наблюдалось - при вызове контекстного меню - нет, там она просто блокировала пользовательский обработчик.
Приведи пример - что за цифры, попробую перехватить. (Может, по keydown надо.) И какая именно Опера. | |
|
|
|
|
|
|
|
для: 12345
(03.11.2006 в 16:21)
| | Не спасает. Пишу:
function key_down(e) {
if(e.preventDefault) e.preventDefault();
else e.returnValue = false;
...........
}
<body onkeydown="key_down(event);">
|
Все равно циферки делают грязное дело свое | |
|
|
|
|
|
|
|
|
для: 12345
(03.11.2006 в 15:03)
| | а что это? Впервые слышу, если честно... можно поподробнее?
===
добавлено:
нашел вот сцылку:
http://pgood.mail15.com/articles.html
почитал. вроде просто. Ща попробую. Если не сработает - вернусь;) В любом случае вернусь, но если не сработает - вернусь с новыми вопросами:)
зы. какой хороший форум. как хорошо здесь жить:) | |
|
|
|
|