我在Android的Firefox/Chrome浏览器中遇到了问题。
当我在输入框中输入文本时(参见下面的代码),当输入字母时,不会触发onkeypress、onkeyup和onkeydown事件,但当输入“%”符号或按下空格键时,会触发这些事件。
在Android预装的浏览器中,一切正常。
还有一件非常罕见的事情,如果我的光标不是最后一个字符,那么行为就不同了... 如果我的光标在文本中间,在Firefox下,所有事件都会因为任何键而被触发。在Chrome下,一个按键会触发两次onkeyup和onkeydown事件,但不会触发onkeypress事件。
我在不同的设备上测试过,类似的问题都存在。
我找不到任何类似的问题报告在互联网上。有人之前遇到过这个问题吗?你是如何解决它的?
像Amazon.com这样的网站自动完成工作正常,所以必须有一种解决方法...
请注意,此问题已在最新版本的Firefox和Chrome中消失。
非常感谢您的帮助。
当我在输入框中输入文本时(参见下面的代码),当输入字母时,不会触发onkeypress、onkeyup和onkeydown事件,但当输入“%”符号或按下空格键时,会触发这些事件。
在Android预装的浏览器中,一切正常。
还有一件非常罕见的事情,如果我的光标不是最后一个字符,那么行为就不同了... 如果我的光标在文本中间,在Firefox下,所有事件都会因为任何键而被触发。在Chrome下,一个按键会触发两次onkeyup和onkeydown事件,但不会触发onkeypress事件。
我在不同的设备上测试过,类似的问题都存在。
我找不到任何类似的问题报告在互联网上。有人之前遇到过这个问题吗?你是如何解决它的?
像Amazon.com这样的网站自动完成工作正常,所以必须有一种解决方法...
请注意,此问题已在最新版本的Firefox和Chrome中消失。
非常感谢您的帮助。
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<h1>onKeyXxx event test</h1>
<input type="text" onkeydown="alert('DOWN');" onkeypress="alert('Press');" onkeyup="alert('UP');">
<hr/>
</body>
</html>
onchange
怎么样?它应该可以工作,因为这不是基于key
的事件。 - antyratsetInterval
和每500毫秒定期检查新值呢? - antyrat