所以我有一个学校问题,我需要访问一个网站,但这个网站要求我通过大约4个门户网站到达那里,我希望只是写一个快速的脚本来为我这样做。问题来自于网站非常草率,并且在certian按钮上写的名称相同,所以我想点击基于类的按钮
这些类是readit2,readit23,readit239和readit2394
$(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==
编辑^添加了标题内容
更多编辑:
它现在通过控制台工作,但通过篡改猴子或油脂猴子我无法让它实际上预先形成行动。
$(function(){
document.getElementsByClassName("readit2")[0].click();
});
通过控制台工作,但在脚本启动时不运行。
答案 0 :(得分:2)
问题是您正在尝试访问一些仍然不存在的节点。将其添加到您的脚本中:
// @run-at document-end
然后确保加载并打印所有节点 另一个旁路就是:
$(document).ready(
//your script
);
答案 1 :(得分:1)
我开始查看所有错误的内容,原始代码:
$(function(){
document.getElementByClassName(readit2).click();
});
这个问题是调用应该是getElementsByClassName
(复数"元素"),因为类通常是共享属性。这也会返回一个数组,所以如果你肯定只有一个数组:
$(function(){
document.getElementsByClassName("readit2")[0].click();
});
如果没有,我建议获取文本并验证其中包含您期望的内容。
编辑:添加引号。