【问题标题】:Greasemonkey button clickGreasemonkey 按钮点击
【发布时间】:2018-05-09 15:00:33
【问题描述】:

谁能帮我用greasemonkey点击这个按钮? http://mibpaste.com/te6fRR (Full Source)

【问题讨论】:

  • 不是编程问题...
  • 不是按钮,只是链接
  • @Jonathon Wisnoski:啊,但在实际页面上,它的样式可能会像按钮一样看起来。 ;)
  • 发布一些viewsource-links不是很有帮助,我们需要在那里注册和特定国家的公民才能看到你在那里看到的东西。我希望你不要以为我们现在开始玩游戏是为了帮助你作弊。
  • 我不会作弊,但我的朋友会作弊,如果有人在玩 erepublik 看到这个,他们想保持隐身。

标签: javascript greasemonkey


【解决方案1】:
var evt = document.createEvent ("HTMLEvents");
evt.initEvent ("click", true, true);
document.getElementById('fight_btn').dispatchEvent (evt);

见:http://wiki.greasespot.net/Generate_Click_Events

【讨论】:

  • 不!这会产生一个NS_ERROR_ILLEGAL_VALUE 异常。我帮你修好了。
  • 真的,我试图保存 1 行 ^^ 。感谢您的修复:)
  • 我不知道为什么,但这并没有点击任何东西(或者它点击了它,但按钮/链接没有任何反应)。
  • @user796738,发布在 mibpaste.com 上的链接没有任何作用!发布完整的未经编辑的页面代码,或者——更好的是——链接到实际的目标页面。
  • @user796738,我创建了一个帐户,找到了一个任务和那个“战斗”按钮(那个网站很痛苦,IMO)。测试了 Dr.Molle 的代码,它起作用了(让我开始战斗)。我不想了解该网站的细节(我也不在乎)。也许您的 GM 脚本中还有其他内容?
【解决方案2】:

由于 createEventinitEvent 现在已弃用,以下使用新的 MouseEvent() constructor 代替:

document.getElementById("fight_btn").dispatchEvent(new MouseEvent('click'));

当然,您可以使用getElementsByClassName("fight_btn")[0] 代替getElementById

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多