Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.03.2011, 16:08
Интересующийся
Отправить личное сообщение для rawuk Посмотреть профиль Найти все сообщения от rawuk
 
Регистрация: 27.02.2011
Сообщений: 24

Горячая клавиша
Народ подскажите как мне сделать, чтобы при нажатии на определенную клавишу на клавиатуре,(допустим клавиша "`") , блок div скрывался, а когда скрыт, и нажимаешь на эту же клавишу то он появлялся бы.
Т.е. условно говоря, при нажатии на одну клавишу блок появлялся или скрывался.

Есть вот такой скриптик
<script type="text/javascript" language="javascript">
 function hotkeys(e) {
 if (!e) e = window.event;
 var k = e.keyCode;
 
 if (k == 192) {document.getElementById('console').style.visibility = 'hidden';}
 
 }
 </script>


вызов функции:
<script type="text/javascript" language="javascript">
function init() {
 document.onkeydown = hotkeys;
}
</script>


и в тег body вот это:
body onpageshow="init()"


----------------------------------------------
При таком раскладе , при нажатии на клавишу 192(~), нужный мне элемент 'console', скрывается('hidden').
Может можно его как то подправить что бы он еще и открывался.
Я экспериментировал с операторами If/else, пытался задать условия выполнения скрипта при определенных параметрах div'A . Тобишь если он скрыт('hidden') то исполнять одно условия при нажатии на клавишу,(т.е. показывать див); если он(div) показан('visible') То соответственно выполнять условие скрытия дива при нажатии на туже клавишу.
Но все тщетно не хоч работать, может я что не так там делал,
Вообще помогите осуществить не этим так любым другим способом,
Ответить с цитированием
  #2 (permalink)  
Старый 27.03.2011, 17:24
Аватар для Vulkan
Профессор
Отправить личное сообщение для Vulkan Посмотреть профиль Найти все сообщения от Vulkan
 
Регистрация: 25.05.2010
Сообщений: 511

вот так будет и скрываться и открываться:
<script type="text/javascript" language="javascript">
window.onload = function () {
    document.onkeydown = function (e) {
        e = e || window.event;
        var k = e.keyCode,
            elem = document.getElementById('console');
        if (k == 192) elem.style.visibility = (elem.style.visibility == 'hidden' ? 'visible' : 'hidden');
    }
}
</script>

<body>
<div id="console" style="width: 100px; height: 100px; background: red;"></div>
</body>
Ответить с цитированием
  #3 (permalink)  
Старый 27.03.2011, 23:42
Интересующийся
Отправить личное сообщение для rawuk Посмотреть профиль Найти все сообщения от rawuk
 
Регистрация: 27.02.2011
Сообщений: 24

Спасибо работает.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как определить нажата какая-либо клавиша или нет? Бобр Общие вопросы Javascript 34 11.11.2016 18:42
Элемент, в котором была нажата клавиша Australl Элементы интерфейса 23 09.02.2011 23:11
Не работает клавиша Ж / ; в FF the.economist Events/DOM/Window 6 18.12.2008 17:20
Safari и клавиша Ctrl freebit Events/DOM/Window 2 19.07.2008 23:57