首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >单击greasemonkey中的按钮

单击greasemonkey中的按钮
EN

Stack Overflow用户
提问于 2013-01-04 14:54:43
回答 1查看 1.4K关注 0票数 1
代码语言:javascript
复制
<a class="js-open-panel action-button" target="video-download" href="#">
        <em><span class="icon-16x16 icon-download"></span> Download</em></a>

使用firebug的xpath /html/body/div2/div2/section3/a4

我想单击此按钮,但始终没有任何东西工作“”getElementBy“

我通过搜索读了一本很大的书,但什么都没有用。

代码语言:javascript
复制
/*
function clickc(x)
{
var el = document.getElementsByTagName('em')[7];
var evt = document.createEvent("MouseEvents");
evt.initEvent("click", true, true);
el.dispatchEvent(evt);
}
setTimeout (clickc , 1);
*/
/*
document.getElementsByClassName("js-open-panel action-button").click();
*/

/*
function clickc(x)
{
var x = document.getElementsByTagName('em')[7].click();
click(x);
}
setTimeout (clickc , 1);
*/
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-04 15:55:08

只要AJAX未加载该按钮,就应该可以执行以下操作:

代码语言:javascript
复制
var dwnldBttn   = document.querySelector (
    "a.js-open-panel.action-button[target='video-download']"
);
var clickEvent  = document.createEvent ('MouseEvents');
clickEvent.initEvent ('click', true, true);
dwnldBttn.dispatchEvent (clickEvent);

请注意,querySelector()的工作依赖于CSS选择器( Firebug也会显示)而不是XPath。

从评论中可以看出,AJAX似乎没有加载这个按钮(但它可能被用来激活它)。

使用这个完整的脚本开始。除了@include指令之外,不做任何更改。

代码语言:javascript
复制
// ==UserScript==
// @name     _YOUR_SCRIPT_NAME
// @include  http://YOUR_SERVER.COM/YOUR_PATH/*
// @grant    GM_addStyle
// ==/UserScript==
/*- The @grant directive is needed to work around a design change
    introduced in GM 1.0.   It restores the sandbox.
*/

setTimeout (clickDownloadButton, 1111);

function clickDownloadButton () {
    var dwnldBttn   = document.querySelector (
        "a.js-open-panel.action-button[target='video-download']"
    );
    var clickEvent  = document.createEvent ('MouseEvents');
    clickEvent.initEvent ('click', true, true);
    dwnldBttn.dispatchEvent (clickEvent);
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14152525

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档