Muz*_*han 7 javascript firefox jquery
我有一个文本框,并仅使用jquery应用允许使用空格的字母.它在chrome中工作但是在firefox中,退格键不起作用.
<input type="text" placeholder="" id="id1">
$(function(){
$('#id1').keypress(function (event) {
if ((event.which >= 65 && event.which < 91) || (event.which > 96 && event.which < 123) || event.which === 32 || event.which===0) {
return true;
}
else {
event.preventDefault();
}
})});
Run Code Online (Sandbox Code Playgroud)
这是Plnkr
And*_*ewR 11
浏览器处理退格字符的方式不同.在Chrome中,backspace永远不会进入keypress事件处理程序,但在Firefox中它确实如此.
如果你添加|| event.which === 8到条件,你将允许退格并返回true,这将使它在Firefox中工作.
编辑:向上箭头,向下,向左,向右和Tab也无法在Firefox中运行.
var ignoredKeys = [8, 9, 37, 38, 39, 40];
if (ignoredKeys.indexOf(event.which) >=0 || (event.which >= 65 && event.which < 91) || (event.which > 96 && event.which < 123) || event.which === 32 || event.which===0) {
return true;
} else {
event.preventDefault();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5570 次 |
| 最近记录: |