【问题标题】:Simulate Enter key in userscript tampermonkey [duplicate]在用户脚本 tampermonkey 中模拟 Enter 键 [重复]
【发布时间】:2020-01-07 07:04:23
【问题描述】:

我正在尝试编写一个用户脚本,该用户脚本在输入标签中键入一些内容,类名 =“chat-input”,然后按 Enter。用户脚本现在只键入“Hello!”在聊天输入中但不模拟输入键。知道为什么吗?

var msg = "Hello!";

        var target = document.getElementsByClassName("chat-input")[0];
                             target.value = msg ;
        var eventType = "textInput";
        var evt = document.createEvent("TextEvent");
        evt.initKeyEvent("keypress", true, false, window, 0, 0, 0, 0, 13, 13);

        target.focus();
        target.dispatchEvent(evt);

输入框没有提交按钮,发送消息的唯一方式是按回车键

【问题讨论】:

    标签: javascript greasemonkey tampermonkey userscripts


    【解决方案1】:

    here复制修改后的答案。

    const ke = new KeyboardEvent("keydown", {
        bubbles: true, cancelable: true, keyCode: 13
    });
    target.dispatchEvent(ke);
    

    根据那篇帖子,initKeyEvent 仅适用于 Firefox。

    【讨论】:

    • 如果帖子重复,您应该投票关闭,而不是复制相同的答案
    • @CertainPerformance 我不认为这个问题是重复的问题,他们只是有相同的答案。但是,是的,如果你这么说
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-05-11
    • 1970-01-01
    • 2016-02-25
    • 1970-01-01
    • 2016-12-08
    • 2015-10-19
    • 1970-01-01
    相关资源
    最近更新 更多