【发布时间】:2019-04-16 15:30:10
【问题描述】:
我正在进行一些验证,我需要在 onkeyup、onkeydown 和 onpaste 事件上触发一些函数。但是它不能在 Android 移动设备上运行,但在桌面上运行良好。
function limitInput(event, length) {
const e = event;
if (
[8, 9, 13, 37, 38, 39, 40].includes(e.keyCode) ||
(e.keyCode >= 48 && e.keyCode <= 58) ||
(e.keyCode >= 96 && e.keyCode <= 105) ||
((e.ctrlKey === true || e.metaKey === true) && (e.keyCode === 65 || e.keyCode === 67 || e.keyCode === 86))) {
/* Allow it */
} else {
/* No valid keyCodes */
}
return true;
}
<input type="text" class="form-control" onkeydown="limitInput(event, 4)" onkeyup="formatInput(event, 4, '/', 2)" onpaste="formatInput(event, 4, '/', 2, true)" required>
谁能帮我解决这个问题。提前致谢!
【问题讨论】:
-
它不适用于触控设备,因为触控设备没有 Keyup 或 Down。您可能应该使用 onchange 或 oninput 侦听器。在此处查看更多活动说明stackoverflow.com/questions/38989559/…
-
@FloriandeVille,不能在 iOS 设备上正常工作。只有安卓设备有问题。
标签: javascript android jquery keyevent onkeydown