Hen*_*gmo 25 javascript jquery javascript-events
当我在页面上并按空格时,我试图触发一个事件,但我无法弄明白.目前我正在尝试使用jQuery来实现令人满意的结果.
我尝试过使用keydown,keyup和keypress.但是,如果您实际上是在向表单或字段输入内容,那么您似乎只能使用它.
我想要的是在按下空格时触发警报.
先感谢您!
Fél*_*lli 41
这些事件会冒出来,所以如果你试图在焦点所在的地方触发事件(即不在输入中),只需绑定一个处理程序window:
$(window).keypress(function (e) {
if (e.key === ' ' || e.key === 'Spacebar') {
// ' ' is standard, 'Spacebar' was used by IE9 and Firefox < 37
e.preventDefault()
console.log('Space pressed')
}
})
Run Code Online (Sandbox Code Playgroud)
另请参阅所有.key值的列表.
试试这个:
$('input:text').keypress(function(e) {
if (e.keyCode == 0 || e.keyCode == 32) // `0` works in mozilla and `32` in other browsers
console.log('space pressed');
});
Run Code Online (Sandbox Code Playgroud)
尝试将您的按键事件侦听器绑定到 jQuery $(document) 对象;
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$(document).keydown(function(e) {
if (e.keyCode == '32') {
alert('space');
}
});
});
</script>
</head>
<body>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
可以使用此代码:
$(window).keypress(function(e) {
if (e.keyCode == 0 || e.keyCode == 32) {
console.log('Space pressed');
}
});
Run Code Online (Sandbox Code Playgroud)
释:
在$(window).keypress(function(e)等待用户按下任何键和存储密钥的数据在参数“e”的按压。
然后if (e.keyCode == 0 || e.keyCode == 32)检查按下的键的代码是否等于空格键的代码,即 0 或 32。如果返回 false,则按下任何其他键,代码结束。
一些常用的键码:
| 归档时间: |
|
| 查看次数: |
51581 次 |
| 最近记录: |