javascript - 无法使用 Greasemonkey 单击此超链接

标签 javascript click greasemonkey tampermonkey

我有一个按钮(超链接)及其等效的 HTML 代码:

<span title="Enroll in Classes" class="SSSBUTTON_CONFIRMLINK">
<a class="SSSBUTTON_CONFIRMLINK" href="javascript:submitAction_win0(document.win0,'DERIVED_REGFRM1_LINK_ADD_ENRL$118$');" tabindex="202" ptlinktgt="pt_peoplecode" id="DERIVED_REGFRM1_LINK_ADD_ENRL$118$" name="DERIVED_REGFRM1_LINK_ADD_ENRL$118$">Proceed to Step 2 of 3</a>
</span>

我想在页面加载 10 秒后单击按钮,我使用以下代码:

// ==UserScript==
// @name        Add to cart
// @namespace   Class
// @description Script to add to cart
// @include     http://go.oasis.com/add/?STRM=2141
// @version     1
// @grant       none
// ==/UserScript==

setInterval (clickOnProceedButton, 10 * 1000)

function clickOnProceedButton () {
    var targSubmit  = $("#DERIVED_REGFRM1_LINK_ADD_ENRL$118$");
    var clickEvent  = document.createEvent ('MouseEvents');
    clickEvent.initEvent ('click', true, true);
    targSubmit[0].dispatchEvent (clickEvent);
}

上面的脚本不工作,不点击按钮。有人可以指出这里有什么问题吗?

编辑: 我在控制台中收到以下错误

ERROR: Execution of script 'Add to cart' failed! Object [object global] has no method 'clickOnProceedButton'
TypeError: Object [object global] has no method 'clickOnProceedButton'
    at Object.eval (unknown source)), 25:14)
    at Object.eval (unknown source)), 27:4)
    at ag (unknown source), 190:4)
    at K (unknown source), 190:46)
    at o (unknown source), 456:2)
    at U (unknown source), 460:85)
    at R (unknown source), 229:40)

提前致谢!

最佳答案

Google Chrome 中完美运行,但在 IE8 中运行不佳

JSFiddle

HTML:

<a  href="https://google.com"  id="DERIVED_REGFRM1_LINK_ADD_ENRL$118$" >Proceed to Step 2 of 3</a>

JS:

function clickOnProceedButton () {
var targSubmit  =  document.getElementById("DERIVED_REGFRM1_LINK_ADD_ENRL$118$");
var clickEvent  = document.createEvent('MouseEvents');
clickEvent.initEvent ('click', true, true);
targSubmit.dispatchEvent(clickEvent);

可能对你有帮助。

关于javascript - 无法使用 Greasemonkey 单击此超链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21120914/

相关文章:

javascript - 如何用用户脚本覆盖警报功能?

javascript - Greasemonkey 脚本使固定定位元素静态化

javascript - jQuery 选项取消选择事件?

javascript - jquery - 让 div 出现在我点击的地方?

javascript - 切换事件偶尔工作

javascript - 脚本可以在电脑上运行,但不能在移动设备上运行

CSS 按钮/链接在某些点击时未注册

javascript - 如何在 greasemonkey 中更新用户脚本

javascript - 通过循环的 JSON 响应

javascript - 检查 Angular 数组中的值