扫码关注官方订阅号
欢迎选择我的课程,让我们一起见证您的进步~~
个人愚见,应该是IE和其他浏览器阵营的历史原因导致的. onEvent 这种方式是IE采用的,可以用returnValue的方式阻止事件的传播,所以onkeydown return false时候,就不能输入空格了。 但是像firefox, chrome之类的浏览器推广的addEventListener是通过e.preventDefault()的方式阻止事件传播, 单单returnValue没有效果。所以正确的是
onEvent
returnValue
onkeydown
return false
addEventListener
e.preventDefault()
javascripttext.addEventListener('keydown',function(e){ //为什么这个阻止不了unput框输入空格 var keynum = e.keyCode||e.which; if(keynum == 32){ if(e.preventDefault) e.preventDefault() return false; }else{ return true; } },false);
javascript
text.addEventListener('keydown',function(e){ //为什么这个阻止不了unput框输入空格 var keynum = e.keyCode||e.which; if(keynum == 32){ if(e.preventDefault) e.preventDefault() return false; }else{ return true; } },false);
像这种东西,能用jquery还是尽量用jquery吧
text.addEventListener('keydown',function(e){ var keynum = e.keyCode||e.which; if(keynum == 32){ e.preventDefault(); } },false);
奇怪换成e.preventDefault() 又成功了
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
个人愚见,应该是IE和其他浏览器阵营的历史原因导致的.
onEvent这种方式是IE采用的,可以用returnValue的方式阻止事件的传播,所以onkeydownreturn false时候,就不能输入空格了。但是像firefox, chrome之类的浏览器推广的
addEventListener是通过e.preventDefault()的方式阻止事件传播, 单单returnValue没有效果。所以正确的是像这种东西,能用jquery还是尽量用jquery吧
奇怪换成e.preventDefault() 又成功了