自定义自动完成箭头控制
Custom autocomplete arrow control
我正在尝试自定义自动完成输入(我知道jQuery UI自动完成,但我决定写一个简单的)。一切都很顺利,我做了所有"一般"的事情——向一些PHP脚本发送数据,接收建议。然后我启用了鼠标点击选择元素,并使用向下箭头, 向上箭头和输入键进行了一些导航。但我的目标是实现"按住上下箭头键"的导航功能(快速浏览)。输入上的处理程序监听keyup
事件,我完全理解我想要的是keypress
事件,因为它保持键保持。但keypress
只适用于可打印的字符,不包括向下箭头'向上箭头。所以问题是:我如何在没有keypress
的情况下使其工作,或者我是否可以以某种方式覆盖此事件维护的键?
谢谢大家,我找到解决办法了。虽然keypress
只能在可打印的字符上触发,但最新的Opera和Firefox 5确实支持它。但是Chrome(可能还有Safari,因为它们非常相似)没有,而keydown
给出了我需要的结果。
如果没有办法克服keypress
的困难,试试这样做。这是伪代码,我没有做所有的键码检测。
var keyStop
onkeydown = function(){
keyStop = setInterval(function(){scrollDown()},250);
}
onkeyup = function(){
clearInterval(keyStop);
}
如果你因为某种原因在你的开发中卡住了,我会推荐Better Autocomplete,这是一个轻量级的jQuery插件,很容易自定义
相关文章:
- 自定义指令模板中的AngularJS控制变量
- 猫头鹰滑块自定义控制按钮
- 在自定义控制台中打印javascript错误
- 使用自定义按钮控制Soundcloud HTML5 Widget Player
- 角度设置自定义标头始终包装在访问控制请求标头中
- 在 Google 地图上使用滑块控制自定义叠加层的不透明度
- 控制 AngularJS 如何替换 ngInclude 或自定义指令
- 如何流畅地制作动画、自定义颜色和控制 jQuery UI 进度条
- 自定义谷歌地图 v3 控制位置问题
- 控制铁页的聚合物自定义组件
- vimeo-如何添加自定义控制栏
- 管理自定义js库的版本控制
- jquery自定义控制的滚动导航
- Salesforce JavaScript OnClick控制台中的自定义按钮
- AngularJS中添加的自定义标头仅显示在访问控制请求标头上
- 自定义输入控制(真棒完成)赢得't提交'值'属性
- 通过javascript控制自定义对话框窗口的字段
- CRM 2011功能区自定义按钮可见性控制
- 文本区域控制-自定义行为输入/ctrl+enter
- 边界框外观-使用fabricjs控制自定义