use*_*796 12 javascript mobile jquery click keyup
我有一些问题要在我的iPhone上启动一个keyup事件,我的代码如下:
var passwordArray = ["word", "test", "hello", "another", "here"];
var test = document.getElementById('enter-password');
test.addEventListener('keyup', function(e) {
if (jQuery.inArray(this.value, passwordArray) != -1) {
alert("THIS IS WORKING");
} else {}
});
Run Code Online (Sandbox Code Playgroud)
这个想法是,当用户输入#enter-password字段时,当他们匹配passwordArray警报中的单词时,将触发.这适用于桌面,例如,一旦你输入word该功能,一旦你输入该功能就会立即开火d.反正有没有让它适用于移动设备?
Joy*_*son 26
您可以添加输入事件.这是一个在输入发生变化时触发的事件.输入适用于台式机和手机
test.on('keyup input', function(){
//code
});
Run Code Online (Sandbox Code Playgroud)
您可以查看此答案以获取有关jQuery输入事件的更多详细信息
Fra*_*ank 12
你可以使用三个事件(但你必须小心你如何"组合"它们):
keyup:它适用于带键盘的设备,当你释放一个键(任何键,甚至是在屏幕上没有显示任何键的键,如ALT或CTRL)时触发它;
touchend:它适用于触摸屏设备,当您从显示屏上移开手指/笔时会触发它;
输入:当你按下一个键"并且输入改变"时触发它(如果按下ALT或CTRL这样的键,则不触发此事件).
该输入事件适用于键盘设备,并与触摸屏设备,因为在接受答案的例子是正确的,但近似指出这一点是很重要的:
test.on('keyup input', function(){
}
Run Code Online (Sandbox Code Playgroud)
在基于键盘的设备,这个函数被调用两次,因为这两个事件KEYUP和输入将被解雇.
正确答案应该是:
test.on('keyup touchend', function(){
}
Run Code Online (Sandbox Code Playgroud)
(该函数被调用的KEYUP台式机/笔记本电脑或touchend的手机)
或者你可以简单地使用
test.on('input', function(){
}
Run Code Online (Sandbox Code Playgroud)
但请记住,所有键都不会触发输入事件(CTRL,ALT&co.不会触发事件).
| 归档时间: |
|
| 查看次数: |
19100 次 |
| 最近记录: |