Sol*_*ili 12 javascript jquery google-chrome internet-explorer-8
我无法preventDefault()上班.
以下是我尝试过的一些不同的代码变体:
第一:
$(document).keyup(function (evt) {
var charCode = (evt.which) ? evt.which : event.keyCode;
if (charCode == 192) {
alert('192');
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
第二:
$(document).keyup(function (evt) {
var charCode = (evt.which) ? evt.which : event.keyCode;
if (charCode == 192) {
alert('192');
evt.preventDefault();
}
});
Run Code Online (Sandbox Code Playgroud)
第三:
$(document).keyup(function (evt) {
var charCode = (evt.which) ? evt.which : event.keyCode;
if (charCode == 192) {
alert('192');
evt.preventDefault();
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
只有警报才有效.
一切工作在Opera,但无法在Chrome和IE也试过keydown和keypress.在keypress脚本上不起作用.
$('#thetext').keydown(function(evt){});既不是这样的.
这是完整的代码:http://bbullett.tk/test/kakey.html
Key 192 = `
Run Code Online (Sandbox Code Playgroud)
我试图插入一些文字或符号而不是`
und*_*ned 37
聆听keyup事件为时已晚,无法打电话preventDefault,试着听keypress或者说keydown.
$('input[type=text], textarea').on('keydown', function(event){
if (event.which == 192) {
console.log('192');
event.preventDefault();
}
});
Run Code Online (Sandbox Code Playgroud)
请注意,jQuery规范化which属性,它是跨浏览器.
没有默认行为.keyup(); 它会在按键触发默认行为后触发.请改用.keydown() or.keypress().
来源: http ://api.jquery.com/category/events/keyboard-events/
| 归档时间: |
|
| 查看次数: |
16204 次 |
| 最近记录: |