模拟用户脚本中的Enter键篡改猴子
我正在尝试编写一个用户脚本,该脚本在带有类名称="chat-input"的输入标记中键入一些内容,然后按Enter键。从现在起,用户脚本只键入"Hello!"在聊天中-输入,但不模拟Enter键。知道为什么吗?
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);
输入框没有任何提交按钮,发送消息的唯一方式是按Enter键
解决方案
正在从here复制修改后的答案。
const ke = new KeyboardEvent("keydown", {
bubbles: true, cancelable: true, keyCode: 13
});
target.dispatchEvent(ke);
根据该帖子,initKeyEvent
仅适用于Firefox。
相关文章