13

再会

我以前从未真正使用过浏览器控制台,所以我真的不知道它能够做什么 - 我想要实现的目标如下:

如何从浏览器控制台强制/启动页面上的自动刷新?也就是说,不必每次都按F5?

另外,控制台是否使用jquery?还是取决于您所在的网页是否使用jquery?

谢谢!

4

8 回答 8

20

使用浏览器选项卡“A”打开和控制另一个浏览器选项卡“B”。这允许您在选项卡“B”中连续自动重新加载网页,否则您无法控制。重新加载选项卡“B”时,不会清除来自选项卡“A”的重新加载命令。

我用它来刷新网站,这样它就不会超时并让我退出。这种方法不需要 jQuery,也不需要您对目标网页的 HTML 代码进行任何控制。

打开浏览器新标签“A”,按F12,选择Console。输入如下内容:

win1 = window.open("https://www.example.com");

timer1 = setInterval(function(){win1.location.href="https://www.example.com"},10*60*1000);

“win1”是为新的浏览器选项卡“B”分配一个Javascript变量名,以便您可以对它进行Javascript控制。“timer1”也是为良好的实践和以后的控制分配一个变量名。setInterVal 函数运行一个匿名函数来调用“win1”或选项卡“B”以刷新它的“location.href”,每 10 分钟一次。

您可能必须同时打开两个选项卡。“固定”它们以便于访问。关闭两个选项卡以停止自动重新加载。硬刷新选项卡“A”也可能会停止自动重新加载。您也许还可以使用变量“timer1”来取消自动重新加载。

于 2019-01-03T04:39:15.207 回答
18

您可以通过运行以下命令从浏览器控制台刷新页面:

location.reload()

如果您所在的网站加载了 jQuery,您将能够运行 jQuery 命令。

如果网站没有加载 jQuery,您可以使用以下书签将 jQuery 注入页面:

javascript:(function(e,a,g,h,f,c,b,d){if(!(f=e.jQuery)||g>f.fn.jquery||h(f)){c=a.createElement("script");c.type="text/javascript";c.src="http://ajax.googleapis.com/ajax/libs/jquery/"+g+"/jquery.min.js";c.onload=c.onreadystatechange=function(){if(!b&&(!(d=this.readyState)||d=="loaded"||d=="complete")){h((f=e.jQuery).noConflict(1),b=1);f(c).remove()}};a.documentElement.childNodes[0].appendChild(c)}})(window,document,"1.3.2",function($,L){(function(){var d=document.createElement("div"),c=document.getElementsByTagName("body")[0],e=false,g="";d.style.position="fixed";d.style.height="32px";d.style.width="220px";d.style.marginLeft="-110px";d.style.top="0";d.style.left="50%";d.style.padding="5px 10px";d.style.zIndex=1001;d.style.fontSize="12px";d.style.color="#222";d.style.backgroundColor="#f99";if(typeof jQuery!="undefined"){g="This page already using jQuery v"+jQuery.fn.jquery;return f()}else{if(typeof $=="function"){e=true}}function a(i,k){var h=document.createElement("script");h.src=i;var j=document.getElementsByTagName("head")[0],b=false;h.onload=h.onreadystatechange=function(){if(!b&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){b=true;k();h.onload=h.onreadystatechange=null;j.removeChild(h)}};j.appendChild(h)}a("http://code.jquery.com/jquery.min.js",function(){if(typeof jQuery=="undefined"){g="Sorry, but jQuery wasn't able to load"}else{g="This page is now jQuerified with v"+jQuery.fn.jquery;if(e){g+=" and noConflict(). Use $jq(), not $()."}}return f()});function f(){d.innerHTML=g;c.appendChild(d);window.setTimeout(function(){if(typeof jQuery=="undefined"){c.removeChild(d)}else{jQuery(d).fadeOut("slow",function(){jQuery(this).remove()});if(e){$jq=jQuery.noConflict()}}},2500)}})();});
于 2013-05-23T06:34:20.633 回答
4

如果您想使用控制台,只需输入document.location.reload()控制台即可。但是,如果您想自动生成它 - 它需要在您的代码中。

是的,如果您在代码中包含该库,控制台将使用 jquery。

还有一件事:对于自动刷新,您需要类似的东西

setInterval(function(){ document.location.reload() },10*60*1000); 但它不会在控制台中工作,因为在第一次刷新后,此代码将不再在控制台中。只需将其放在您的代码中即可。

于 2013-05-23T06:33:13.700 回答
3

你可以使用喜欢

   document.location.reload()
于 2013-05-23T06:31:43.587 回答
1

如果您的网页包含 jQuery。那么 jQuery 将在控制台中可用:) 要刷新,您可以直接在控制台中键入:

window.location.reload()
于 2013-05-23T06:32:26.767 回答
0

最简单的方法是使用插件。例如“超级自动刷新”。适用于大多数浏览器

于 2018-03-15T21:53:22.963 回答
-1

添加到@saeng的答案,以防您需要在一段时间后停止间隔。

打开控制台并编写下面提到的代码段。

INTERVAL = 5    // seconds
STOP_AFTER = 15 // seconds

// Open the same link in the new tab
win1 = window.open(location.href);

// At every 5 seconds, reload the page
timer1 = setInterval(() => {
    win1.location.reload();
    console.log("Refreshed");
},INTERVAL*1000)

// Stop reloading after 15 seconds
setTimeout(() => clearInterval(timer1), STOP_AFTER*1000)

它将打开一个具有相同链接的新选项卡并每隔一段时间重新加载它。一段时间后,它将停止重新加载。

于 2021-11-30T08:50:30.777 回答
-2

添加这个 javascript

setTimeout(function () { location.reload(1); }, 5000);

将以下元标记添加到您的页面

<meta http-equiv="refresh" content="5; URL=http://mywebsite/mypage.aspx">

非常感谢安

于 2013-05-23T08:12:25.923 回答