我有以下代码;
<script>
$(document).ready(function() {
$('a[href*="profile"]:contains("PETER PAN")').closest('tr').find('.fightActionInnerInner').click();
});
我将如何运行它,然后刷新页面(比如每 2-3 秒)并重新运行脚本。我正在使用 Greasemonkey,如果有帮助的话。谢谢。
我有以下代码;
<script>
$(document).ready(function() {
$('a[href*="profile"]:contains("PETER PAN")').closest('tr').find('.fightActionInnerInner').click();
});
我将如何运行它,然后刷新页面(比如每 2-3 秒)并重新运行脚本。我正在使用 Greasemonkey,如果有帮助的话。谢谢。
在 JavaScript 中,您可以使用 重新加载页面window.location.reload()
,history.go(0)
甚至window.location.href=window.location.href
文档就绪功能中的代码将在页面重新加载时自动再次运行。
如果你想延迟某些事情,你可以这样做setTimeout
:
setTimeout(function (){
//do something
}, yourMillisecondsToWaitUntilStart);
对于您的代码,它将是:
$(document).ready(function(){
$('a[href*="profile"]:contains("PETER PAN")').closest('tr').find('.fightActionInnerInner').click();
setTimeout(function(){
window.location.reload();
}, msToWait
});
替换msToWait
为您希望延迟页面重新加载的毫秒数。
您可以将 setTimeOut 函数与 window.location 重新加载一起使用,如下所示:
$(document).ready(function(){
setTimeout(function(){
window.location.reload();
}, 2000);
});
这是一个工作示例的小提琴: jsFiddle
阅读有关Meta refresh的信息。
您只需将其放在页面的 head 标记中
<meta http-equiv="refresh" content="3">
但是,我建议您阅读整个页面,特别是这些部分(即使您最终使用其他用户建议的 javascript 重定向方式,因为本文显示了每隔几秒刷新一次的一些一般缺点,无论您采用哪种方式):
万维网联盟 (W3C) 不鼓励使用元刷新,因为意外刷新会使用户迷失方向。
缺点
元刷新标签有一些缺点:
如果页面重定向过快(少于 2-3 秒),使用 < 下一页上的“返回”按钮可能会导致某些浏览器移回重定向页面,从而再次发生 > 重定向。这不利于可用性,因为这可能会导致读者“卡”在最后一个网站上。读者可能希望也可能不希望被重定向到不同的页面,这可能会导致用户不满或引发对安全性的担忧。
备择方案
刷新
另一种方法是提供交互设备,例如按钮,让用户选择何时刷新内容。另一种选择是使用诸如 Ajax 之类的技术来更新(部分)网站,而不需要完整的页面刷新,但这也需要用户在他们的浏览器中启用 JavaScript。
如果您真的不需要刷新页面,我建议您使用setTimeout
javascript函数,正如另一个答案中已经提到的(除了使用它来触发点击,而不是重新加载页面),因为刷新页面是一件大事小(如果点击做了一些小的事情,我猜它确实如此)。