[JS] - нажатие клавиш+2вопроса
1)
$(document).ready(function() { $('body').click(function(e) { e = e || event; if (!e.ctrlKey || !e.shiftKey) return; alert('OK'); }); }); что означает 3 строка? ? e = e или событие? как это понять? ----- 2) ставлю обработчик на кнопку инпут, например: document.getElementById("but").onclick = function() { alert("OK"); } <input type='submit' id="but"> пишет с консоли, что невозможно присвоить клик нуллу (Cannot set property 'onclick' of null) ; В jQuery можно, знаю, просто хотелось узнать как работает в js 3) как отловить определенную клавишу, чтоб не нажималась? -- Спасибо заранее! P.S. прошу прощения, за столько вопросов :) |
1) это для кроссбраузерности. Означает, если браузер не видит в обработчике e, нужно брать event
2) обработчик нужно навешивать ПОСЛЕ того, как элемент добавлен на страницу 3) Клавиша на клавиатуре? Например, скотчем заклеить. Как это "чтоб не нажималась"? Чтоб не обрабатывалась? Проверяйте в событии keydown? <!DOCTYPE html> <html> <head> <script> function showKeyCode(e) { if (e.keyCode == 13) { alert('нажат энтер'); return false; } else alert( "keyCode: " + e.keyCode + "\n" ); } </script> </head> <body onkeydown="showKeyCode(event);"> <p>Кликните сюда и затем нажмите клавишу</p> </body> </html> |
Часовой пояс GMT +3, время: 07:18. |