0

我正在尝试为 Opera 编写一个自动发送特定聊天消息的扩展。(确切地说是命令。)为此,我想将消息输入文本区域,模拟按钮单击以发送消息并阅读我得到的回复。

我一直在尝试使用 JavaScript 的 Element.click() 函数来模拟点击,但它不起作用。我的代码是这样的:

document.getElementsByClassName("text-area")[0].value = "test";
document.getElementsByClassName("send-chat-button")[0].click();

textarea 填充了我想要的值,但它没有单击按钮。我也没有在控制台上得到任何输出。我很高兴能得到任何帮助。

问候, 杀手1

更新:你是对的,按钮没有OnClick我认为的事件。老实说,我不确定它是如何提交消息的。由于我正在为我不拥有的网站编写插件,因此我无法编辑源代码或任何内容。

4

1 回答 1

0

最简单的方法是使用trigger()jQuery 中的函数:

$(".send-chat-button:first").click(function()
{
    // Whatever actions you want to perform on click
});

$(".send-chat-button:first").trigger("click"); // Executes the click event handler

trigger(event)将在代码中的任何位置执行附加到元素的任何指定事件。

如果你想使用纯 JavaScript,这里已经有一个很好的答案。正如我所说,jQuery 使这变得非常简单。

于 2016-03-30T18:20:56.940 回答