【问题标题】:Trigger keyboard key press and hold for 5 seconds on page load在页面加载时触发键盘按键并按住 5 秒
【发布时间】:2020-01-14 15:34:37
【问题描述】:

我正在尝试编写一个脚本,该脚本会在页面加载时触发一个连续按住 Space 键 5 秒的事件。在这 5 秒之后,钥匙升起。这可能吗?

请注意,一切都必须在没有任何用户交互的情况下发生。

【问题讨论】:

  • 但是这个空间向下应该做什么?也许相反,如果触发按键以触发功能或行为,您可以直接触发该功能或行为(XY问题)
  • 嗨杰里米,“空格”键盘键只需要自动按下并按住 5 秒钟。 (我有我的用处),谢谢
  • 好吧,你只是在重复你的问题而没有回答我的问题

标签: javascript dom-events


【解决方案1】:

您可以通过调用 dispatchEvent 函数 (see also this StackOverflow thread) 来模拟虚假用户输入。但是,假装按住一个键五秒钟可能会有问题。当然,您可以使用setInterval 函数每隔x 毫秒重新调度键盘事件:

setInterval(() => {
  document.dispatchEvent(keyboardEvent);
}, 100);

但是,您应该考虑考虑一个不同的解决方案,而不用模拟 Space down 事件。如果按下 Space 键,您的代码的哪一部分会受到影响?只需重写那段代码,以便在加载页面时执行特殊操作。

查看一些脚本代码也会有所帮助。

【讨论】:

    猜你喜欢
    • 2013-01-23
    • 1970-01-01
    • 2013-03-12
    • 1970-01-01
    • 1970-01-01
    • 2016-03-11
    • 2020-11-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多