使用element.click()来模拟Javascript中的Button click



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

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

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

文本区域填充了我想要的值,但它没有点击按钮。我在控制台上也没有得到任何输出。如果能得到任何帮助,我都会很高兴。

问候,Kileraptor1

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

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

$(".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使这一点变得非常简单。

相关内容

  • 没有找到相关文章

最新更新