Javascript Tampermonkey用户脚本滚动到带有alt标记的第一个图像
我使用一个培训网站,有很多课程。这是相当恼人的,它不记得你的最后一个课程的滚动位置。我正在尝试编写一个tampermonkey用户脚本,以滚动到alt标记为“NotStarted”的第一个图像,但它似乎不起作用 这是我到目前为止所做的尝试Javascript Tampermonkey用户脚本滚动到带有alt标记的第一个图像,javascript,greasemonkey,tampermonkey,userscripts,Javascript,Greasemonkey,Tampermonkey,Userscripts,我使用一个培训网站,有很多课程。这是相当恼人的,它不记得你的最后一个课程的滚动位置。我正在尝试编写一个tampermonkey用户脚本,以滚动到alt标记为“NotStarted”的第一个图像,但它似乎不起作用 这是我到目前为止所做的尝试 var myList = document.getElementsByTagName("img"); for(var i=0;i<myList.length;i++) { if(myList[i].alt == "
var myList = document.getElementsByTagName("img");
for(var i=0;i<myList.length;i++)
{
if(myList[i].alt == "Not Started")
{
var pos = myList[i].offsetTop;
}
}
window.scrollTo(0,pos);
var myList=document.getElementsByTagName(“img”);
对于(var i=0;i这里有两件事:
var pos
如果您在for循环中声明(第一次提到)变量pos
,它将不起作用。您必须在函数的其余部分可以读取它之前声明它
window.addEventListener('load',(事件)=>{
我不知道为什么,但至少在下面的代码段中需要这样做。也许js在窗口加载之前开始运行,因此无法设置window.scrollTo
。如果您有任何问题,请将其保留在注释中
window.addEventListener('load',(事件)=>{
var myList=document.querySelectorAll('img');
var-pos;
对于(变量i=0;i
奇怪它似乎不起作用了/==UserScript===/@name New UserScript/@namespacehttp://tampermonkey.net/ //@version 0.1//@description尝试接管世界!/@author You//@grant none//@includehttps://example.com/*//=/UserScript==window.addEventListener('load',(event)=>{var myList=document.getElementsByTagName(“img”);var pos;for(var i=0;i
“@include*”:您需要将此设置为您希望它工作的网站。我怀疑它是“example.com”。请告诉我此设置是否有效。请记住在末尾添加/*
,正如您在此处所做的那样,该部分是正确的。此外,我只更改了一行代码(我在第7行添加了break
)所以你也应该更新它。我确实更改了example.com,但是不允许实际的站点。很难说为什么它不起作用。在这段代码中它显然起作用。我想检查一下,确保你启用了扩展。也可能是你的站点没有使用图像标记,但我不确定这是否真的有可能。