javascript - 谷歌浏览器取消上下箭头事件

标签 javascript google-chrome safari dom-events event-bubbling

我正在为一个网站制作一个 AutoSuggest 小部件,它的工作方式是当用户在输入文本框中输入内容时,会显示带有建议的 div,并且用户可以通过鼠标或上下箭头浏览它.每个词都是单独建议的(不像谷歌那样建议它在整个短语中的位置。

我在使用 Google Chrome 输入框时遇到问题,因为当我按下向上或向下箭头时,浏览器会出现默认行为 - 使用插入符号跳转到文本框的末尾或开头(就像使用主页或结束按钮一样) .在 Firefox 或 Internet Explorer 上没有这种效果。我怎样才能禁用此效果?

我从事件处理程序函数返回“false”,并且还使用了来自此处 http://www.javascripter.net/faq/canceleventbubbling.htm 的函数但 carret 仍然在 Chrome 上跳跃......

编辑:在 Safari 上同样的效果...

最佳答案

您是否尝试过阻止默认行为?

window.addEventListener('keydown', function(e) {
  e.preventDefault();
  ...
}, false);

关于javascript - 谷歌浏览器取消上下箭头事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5694086/

相关文章:

JavaScript 日期差异 - 一小时太多

javascript - 错误 : Permission denied to access property 'handler'

开发者控制台打开时 Flash 播放器消失

c++ - 如何处理 WM_NCCALCSIZE 并制作类似 chrome 的界面?

html - .CSS 使用 Custom.css 使用 wordpress 编辑菜单

css - 元素在 safari 过渡期间错位

javascript - Node 中的超测自定义 express 服务器

javascript - 在 <ol> 中使用 <h3> 和 ng-repeat

javascript - document.location.hash 在 Safari 中不起作用

html - Safari 6 - 影响整个表单的自动完成