Tag: greasemonkey tampermonkey

Greasemonkey根据网页的其他部分修改文本?

背景故事:我希望通过实时添加玩家的统计数据来改进Fantasy Football网页。 我们假设我们使用此页面作为参考。 对于每个玩家,它列出了他们所扮演的位置(即QB,WR等)以及他们所对抗的球队。 我的当前代码: @BrockAdams昨天回答了我的问题,并且能够组建一个包含团队名称,职位和等级的表格。 以下是该表的示例: 我想要完成的是根据对方球队和我的球员位置查找表中的排名并将其添加到字符串的末尾。 我做了什么:包含我的玩家位置的字符串可以使用document.querySelectorAll(‘span[class=”Fz-xxs”]’)[#].innerText.split(” – “).slice(-1)[0]其中#在0到33之间 可以使用document.querySelectorAll(‘a[class=”F-reset”]’)[#].innerText.split(” “).slice(-1)[0]找到包含对手队伍的字符串,其中#又一次在0到33之间 问题:我的问题是,如何根据我的球员位置和对方球队修改我的脚本以将排名#附加到字符串的末尾? 我发现的一个小问题是,无论何时用户加载幻想页面,我的脚本都将重新获取所有团队的位置+排名,即使他们每周只更改一次。 有没有一种很好的方法可以将值存储在浏览器中,并且每周只更新一次? 这是最终结果应该是什么样子的图片。 这是来自去年创建的脚本,但由于雅虎修改了他们的网站,旧脚本不再有效。 编辑:这是现有HTML代码的一部分。 Player Note R. Tannehill Mia – QB Sun 10:00 am @ Was 代码将进行的唯一修改是将Sun 10:00 am @ Was更改为Sun 10:00 am @ Was Sun 10:00 am @ Was – 1 。 上面的截图应该清楚。 它将要修改的页面是这一页。 Edit2:我在jsFiddle中创建了一个小版本,但我无法将其添加到Brock创建的greasemonkey脚本中。

在Greasemonkey脚本中的jQuery中添加类

我之前问过一个问题 ,并给出了一个工作解决方案 。 我想要做的一件事是使用jQuery删除类F-link-secondary并根据deltaText的值将其替换为F-rank-good / bad / neutral。 在大多数页面上,这是我看到的: 但是在某个页面上,F-rank-XXX类不在那里,而是只有一个没有样式的F-link-secondary。 这是我想要做的,但我不确定如何将它与Greasemonkey脚本合并。 function getRank(deltaText) { if((1 <= deltaText) && (deltaText <= 10)) $("???").removeClass("F-link-secondary").addClass("F-rank-good"); if((11 <= deltaText) && (deltaText <= 22)) $("???").removeClass("F-link-secondary").addClass("F-rank-neutral"); if((23 <= deltaText) && (deltaText <= 32)) $("???").removeClass("F-link-secondary").addClass("F-rank-bad"); }

如何根据链接标题属性的不同措辞更改链接的文本?

在我的幻想足球页面中,它提供了关于对方球队的统计数据,当你鼠标hover时它会告诉你他们放弃了多少分数(见图)。 以下是与此相关的相关代码: Was 如何创建一个Greasemonkey脚本,将#添加到团队名称的末尾(即“Was”变为“Was – 3” 有一个问题是,有时排名表示它放弃了“第二少的分数”,在这种情况下你必须做32-2来获得绝对排名。

如何转换jQueryfilter以与waitForKeyElements一起使用?

此代码删除少于3转推的推文,但现在我有刷新(AJAX)问题。 如何添加waitForKeyElements函数来修复它? $(‘.js-stream-item:has(span.ProfileTweet-action–retweet)’).filter(function() { return parseInt($(this).find(‘span.ProfileTweet-actionCount’).attr(‘data-tweet-stat-count’)) < 3; }).remove();

代码在控制台/暂存器中工作,但在Greasemonkey脚本中不起作用?

我正在尝试编写一个脚本,以便在Google Flights上增加地图。 我已经在Firefox的暂存器中使用了jQuery。 这个脚本正是我想要完成的: $(‘div’).filter(function(){ return $(this).css(‘width’) == ‘648px’ }).css({“width”:”900px”,”height”:”550px”}); 但是当我将其粘贴到Greasemonkey脚本中时,它不起作用。 如果我添加一些console.logs来调试,我可以validation脚本是否正在运行并且filter是否正常工作,但它并没有修改CSS。 有任何想法吗?

用户脚本中的jQuery .get for non https

我在我的网站上制作了一个脚本,用于访问不同网站上的表格。 但是,其他网站是HTTP,因此chrome告诉我“此请求已被阻止;内容必须通过HTTPS提供”。 $.get(‘http://www.kanjidamage.com/kanji’, null, function searchKD () { /*function*/ }); 所以我要问的是:即使不是HTTPS,我如何访问不同网站上的元素。

Userscript在执行代码技术之前等待页面加载?

我正在写一个Greasemonkey用户脚本,并希望在页面完全加载时执行特定代码,因为它返回我想要显示的div计数。 问题是,这个特定的页面有时会在所有内容加载之前占用一些。 我试过,记录$(function() { }); 和$(window).load(function(){ }); 包装。 但是,似乎没有一个对我有用,尽管我可能会错误地应用它们。 我能做的最好是使用setTimeout(function() { }, 600); 哪个有效,但并不总是可靠的。 什么是在Greasemonkey中使用的最佳技术,以确保在页面加载完成后执行特定代码?