beg*_*ner 2 html javascript jquery onkeypress
我在网上找到了一个代码,帮助我使用ESC按钮关闭弹出对话框.代码如下:
<script type="text/javascript">
function ESCclose(evt) {
if (evt.keyCode == 27)
window.close();
}
</script>
Run Code Online (Sandbox Code Playgroud)
onkeypress事件
<body onkeypress="ESCclose(event)">
Run Code Online (Sandbox Code Playgroud)
我尝试在表单标签中使用onkeypress.它无法正常工作,因为我无法使用ESC按钮关闭对话框.有帮助吗?
问题是因为keypress事件不会触发不可打印的字符(例如退格或转义).
要解决此问题,您可以使用keydown:
function ESCclose(evt) {
if (evt.keyCode == 27) {
//window.close();
console.log('close the window...')
}
}Run Code Online (Sandbox Code Playgroud)
<body onkeydown="ESCclose(event)"></body>Run Code Online (Sandbox Code Playgroud)
正如您使用jQuery标记了问题一样,您可以使用它来更好地分离HTML和JS代码:
$(document).on('keydown', function(e) {
if (e.keyCode == 27)
window.close();
});
Run Code Online (Sandbox Code Playgroud)
请注意,具有上述代码on*的body元素不需要事件属性.
| 归档时间: |
|
| 查看次数: |
2120 次 |
| 最近记录: |