【问题标题】:What should be the target of a Javascript keypress event?Javascript 按键事件的目标应该是什么?
【发布时间】:2018-08-03 20:05:23
【问题描述】:

我正在为一个接受键盘输入以展开文章列表中的下一篇文章的网站编写用户脚本。当按下 j 键且输入字段没有焦点时执行“展开文章”操作。

我找到了以下有效的 jQuery 命令来生成按键事件:

$('.some_element').trigger($.Event("keydown", {keyCode: 74}))

我可以用什么元素替换'.some_element' 选择器以使网站识别我的击键?我试过windowdocument'body',但这些都不起作用。

【问题讨论】:

    标签: javascript jquery dom-events keyboard-events


    【解决方案1】:

    您还需要which 属性

    $(document).trigger($.Event("keydown", {keyCode: 74, which: 74}))
    

    【讨论】:

      【解决方案2】:

      使用 $(document).trigger... 还要确保你有没有输入焦点的 if 条件。

      【讨论】:

      • "我尝试过窗口、文档和正文,但这些都不起作用。"
      • 试试这个$(document).on('keydown', function(e){ // your code })这是一个密码笔codepen.io/simranz/pen/NBzXmX
      • 这是一个用户脚本,所以我无权访问处理按键的代码。我只需要用 javascript 发送按键。
      • 好吧,我没用过用户脚本。但是,如果您可以在 DOM 中的元素上触发事件,那么理论上您也可以在 $('body') 上执行此操作。
      猜你喜欢
      • 2021-08-05
      • 1970-01-01
      • 1970-01-01
      • 2010-10-15
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 2016-06-09
      • 1970-01-01
      相关资源
      最近更新 更多