自行单击而不自动执行按钮单击

时间:2020-01-03 22:35:42

标签: javascript setinterval greasemonkey

我是新来的。我尝试与油猴一起从“流亡之路”商业搜索中复制所有耳语。

当我单击自己创建的meta按钮时,一切都很好。但是当我通过SetInterval运行该函数时,只是删除了按钮,并且之前没有单击它们。

我想念什么?我已经尝试了很多。

// ==UserScript==
// @name         test
// @namespace    https://nope
// @version      0.0.0.1
// @description  clicks whispers of poe-trade
// @author       PJ
// @license      no
// @match        https://www.pathofexile.com/trade*
// ==/UserScript==




var input=document.createElement("input");
input.type="button";
input.value="Copy next";
input.onclick = CopyWhisper;
input.setAttribute("style", "font-size:18px;position:absolute;top:120px;right:40px;");
document.body.appendChild(input);


function CopyWhisper()
{
    var allbuttons = document.getElementsByClassName("whisper-btn");
    var firstbutton = allbuttons[0];
    firstbutton.dispatchEvent(new MouseEvent('click'));
    firstbutton.remove();

}

setInterval(CopyWhisper, 5000);

1 个答案:

答案 0 :(得分:0)

看起来您正在尝试通过以类名“ whisper-btn”查找按钮来删除按钮,而按钮元素未分配该类,导致没有任何内容分配给“ allbuttons”变量。 您可以将该类名添加到按钮,也可以尝试使用document.getElementsByTagName(“ input”)。

看看这个小提琴:https://jsfiddle.net/9fe8zc6u/

var input=document.createElement("input");
input.type="button";
input.value="Copy next";
input.onclick = CopyWhisper;
input.setAttribute("style", "font-size:18px;position:absolute;top:120px;right:40px;");
document.body.appendChild(input);


function CopyWhisper()
{
    var allbuttons = document.getElementsByTagName("input");
    var firstbutton = allbuttons[0];
    firstbutton.dispatchEvent(new MouseEvent('click'));
    firstbutton.remove();

}

setInterval(CopyWhisper, 5000);
相关问题