Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Javascript - отследить нажатие клавиши в Safari / 1 сообщений из 1, страница 1 из 1
04.09.2008, 10:18
    #35521705
brejnev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript - отследить нажатие клавиши в Safari
Что хочу сделать: пользователь выбирает из выпадающего меню пункт и если во время выбора из списка зажат Ctrl, то выскакивает некоторый диалог для ввода комментария, если Ctrl не был зажат, то ничего не выводить.

Вот код. Под firefox и explorer работает нормально, но под safari работает направильно. Диалог поднимается, но после шаманских действий по нажиманию выпадающего меню с контролом и без.

Фиксирую нажатие контрола
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
<script>
            var needComment = false;
            document.onkeydown = ToggleShortcut;
                        
            function ToggleShortcut (event)
            {
                if (!document.getElementById) return;
                if (window.event) event = window.event;
                
                if (event.ctrlKey)
                {
                    needComment = true;
                }
                else
                {                   
                    needComment = false;
                }
            }
        </script>

А в этой процедуре смотрю был ли нажат контрол и если был, то поднимаю диалог.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
<script>            
            function showCommentDialog(){
                                                
                if(needComment){
                    needComment = false;
                   // ...некоторый код, поднимающий диалог для комментария
                }
                               
            }                       
</script>

Непосредственно HTML

Код: plaintext
1.
<select onkeydown="javascript: document.onkeydown = ToggleShortcut;"  onchange="showCommentDialog();" >...</select>
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Javascript - отследить нажатие клавиши в Safari / 1 сообщений из 1, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]