我不知道这个问题是否在某个地方得到了回答,但它是这样的。
为什么这是有效的?
el.onkeydown = function(e) {
if(!((e.keyCode > 95 && e.keyCode < 106) || (e.keyCode > 47 && e.keyCode < 58) || e.keyCode == 8)) {
return false;
}
}这个不是吗?
function negativeNum(e) {
if(!((e.keyCode > 95 && e.keyCode < 106) || (e.keyCode > 47 && e.keyCode < 58) || e.keyCode == 8)) {
return false;
}
}
el.addEventListener('keydown', function () {
negativeNum(event);
}, false);谢谢。
发布于 2020-03-18 22:03:05
如果您像这样将回调参数传递给您的函数,那么它应该可以工作
el.addEventListener('keydown', function (event) {
negativeNum(event);
}, false);你可以像这样使用你的函数作为回调函数:
el.addEventListener('keydown', negativeNum, false);发布于 2020-03-18 22:17:08
function negativeNum(e) {
if(!((e.keyCode > 95 && e.keyCode < 106) || (e.keyCode > 47 && e.keyCode < 58) || e.keyCode == 8)) {
e.preventDefault();
}
}
el.addEventListener('keydown', negativeNum, false);有关此here的更多信息
发布于 2020-03-18 22:40:23
1个el.onkeydown = function (e) {}
一个超文本标记语言对象有一个不同的事件作为它的键,默认情况下el.onkeydown是空的&后来我们用一个fn覆盖了它,这里的fn可以返回true / false
如果你返回false,它基本上做了3件事:
[A] event.preventDefault();
[B] event.stopPropagation();
[C] stops execution and returns immediately2个el.addEventListener('keydown', function () {})
在__proto__对象的深层,你可以找到addEventListener,它接受一个回调fn作为第二个参数。
如果你从这个callback fn返回任何东西,return值将被父fn收集。addEventListener &不会有像1中那样的效果。
https://stackoverflow.com/questions/60741139
复制相似问题