其实我们在数据库发生一些更新时播放通知声音,所以我试图在浏览器最小化时每30秒刷新一次ActionMethod
,这在Firefox中工作正常,但在Chrome中这不起作用。当浏览器被最小化时,每隔30秒,asp mvc刷新页面
场景:
最小化浏览器,让计算机处于闲置状态。
我已经尝试了两种方法:
方法1:
<meta http-equiv="refresh" content="30;URL=http://example.com/" />
方法2:
<script>
$(document).ready(function() {
setTimeout(function(){
window.location.reload(1);
}, 30000);
});
</script>
阅读this文章后,它似乎在Chrome最小化它设置Javascript setInterval
和setTimeout
为空闲状态,因为浏览器性能改进会影响Javascript间隔的执行。
所以我可以使用计划任务如FluentScheduler,Quartz.NET或Hangfire每30秒重新加载ActionMethod
?
任何帮助将是伟大的。
对于这样的情况,我会用wihh推送通知到页面而不是每30秒轮询一次。你可以使用像SignalR这样的库来进行客户端 - 服务器通信 – Massanu
@Massanu,谢谢,最后我用signalR去了,一切正常,[这里](http://stackoverflow.com/a/38587725/2218697)是我的解决方案。 – stom