Function 按类单击按钮
所以我有一个学校的问题,我需要访问一个网站,但这个网站需要我通过大约4个门户网站才能到达那里,我希望能写一个快速脚本来为我做到这一点。问题来了,该网站是非常草率的,写的名称是相同的certian按钮,所以我想点击按钮的基础上类 这些类是readit2、readit23、readit239和readit2394Function 按类单击按钮,function,greasemonkey,tampermonkey,Function,Greasemonkey,Tampermonkey,所以我有一个学校的问题,我需要访问一个网站,但这个网站需要我通过大约4个门户网站才能到达那里,我希望能写一个快速脚本来为我做到这一点。问题来了,该网站是非常草率的,写的名称是相同的certian按钮,所以我想点击按钮的基础上类 这些类是readit2、readit23、readit239和readit2394 $(function(){ document.getElementByClassName(readit2).click(); }); 我以为上面的代码会在
$(function(){
document.getElementByClassName(readit2).click();
});
我以为上面的代码会在加载第一页后立即单击它,但没有。任何帮助都会很好
// ==UserScript==
// @name dumb spider web
// @namespace ===============
// @version 0.1
// @description gets me through this dumb stuff
// @match ===============
// @copyright 2012+, You
// @require http://code.jquery.com/jquery-latest.js
// ==/UserScript==
edit^添加了标题内容
更多编辑:
它现在通过控制台工作,但通过篡改猴子或油脂猴子,我无法让它实际执行动作
$(function(){
document.getElementsByClassName("readit2")[0].click();
});
通过控制台工作,但在脚本启动时不运行。我开始查看所有错误的内容,您的原始代码:
$(function(){
document.getElementByClassName(readit2).click();
});
问题是调用应该是getElementsByCassName
(复数“元素”),因为类通常是一个共享属性。它还返回一个数组,因此如果您确定只有1个:
$(function(){
document.getElementsByClassName("readit2")[0].click();
});
如果不是的话,我建议获取文本并验证它是否包含您期望的内容
编辑:添加引号。问题是您试图访问一些仍然不存在的节点。将以下内容添加到脚本中:
// @run-at document-end
然后确保加载并打印所有节点。另一个旁路是:
$(document).ready(
//your script
);
你打算怎么办?用户脚本还是只是在控制台中尝试?我正在尝试通过内置的chrome应用程序“tampermonkey”来运行它。您发布了它的标题,很抱歉忽略了这一点。您是否为jquery包含了
@require
?如果您发布标题部分可能会有所帮助(如果您想保留隐私,只需删除站点的url即可)。我认为这是一个成功的例子。用我所拥有的编辑了原始帖子,我也尝试了你发送的带有require的链接,并用该链接替换了我的链接,但没有任何更改。仍然有点想在这个问题上寻求帮助,OP edited againi我已经尝试了这段代码,但它也不起作用,我再次查看了页面,这是唯一使用类“readit2”的东西,它是一个按钮@user3699068-一次执行一个步骤,尝试运行文档。GetElementsByCassName(readit2)[0]。单击()代码>在chrome控制台中。如果它能工作,那么问题可能是tampermonkey如何运行脚本。它说引用错误:readit2未定义消息:“readit2未定义”即使它是,我是否必须指定它的外观或它所在的Div?不知道如果需要的话该怎么做=/我以为您已经定义了一个变量“readit2”。只需引用它,因为它是一个字符串literal.ah gotchyah,EDIT<在我现在将其粘贴到控制台时起作用,但在tampermonkey$(function(){document.getElementsByClassName(“readit2”)[0]中启用它时不起作用;[(链接所在的页面在此加载)