Javascript 一个DIV的不断重新加载?
好的,在过去的4到5个小时里,我已经环顾了Stack和其他地方,试图找到解决问题的方法 我在一个包含5行信息的页面中有一个Iframe,这些信息是从数据库中获取的。所述信息将不断变化,因此需要每1-5秒刷新一次,如果需要,可以延长到10秒 我使用了下面的代码,这是可行的,但由于某种原因,我的浏览器崩溃了,我猜重新加载太快了Javascript 一个DIV的不断重新加载?,javascript,php,jquery,html,page-refresh,Javascript,Php,Jquery,Html,Page Refresh,好的,在过去的4到5个小时里,我已经环顾了Stack和其他地方,试图找到解决问题的方法 我在一个包含5行信息的页面中有一个Iframe,这些信息是从数据库中获取的。所述信息将不断变化,因此需要每1-5秒刷新一次,如果需要,可以延长到10秒 我使用了下面的代码,这是可行的,但由于某种原因,我的浏览器崩溃了,我猜重新加载太快了 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js"></script>
<script type="text/javascript">
var auto_refresh = setInterval(
function ()
{
$('#info').load('mid.php');
}, 5000); // refresh every 5000 milliseconds
</script>
var auto_refresh=setInterval(
函数()
{
$('#info').load('mid.php');
}, 5000); // 每5000毫秒刷新一次
下面是mid.php中的代码(页面中有php,但这是我需要刷新的部分)
犯罪:
GTA:
蔡斯:
勒索:
排名:
我知道我可以使用HTML刷新Iframe,但是当屏幕左上角每3秒刷新一次时,它看起来很难看,非常感谢您的帮助
谢谢我希望您使用Ajax调用来实现这类功能。您最好使用ice jQuery来就地更新元素的内容,以避免刷新iframe。iFrame的功能有限,仅用于更新网页内容通常没有意义 浏览器崩溃可能是由于使用set internal造成的。如果呼叫完成时间超过5秒,则可能会叠加多个呼叫。但对于你的情况,我觉得这不是问题所在,因为它应该能够很快更新橙色。无论如何,更好的方法是在每次更新进程运行完成时为其执行设置一个计时器。这样,如果通话时间太长,您就不会继续累积请求 Use可以使用
.load()
回调,将setTimeout()替换为setInterval
$(document).ready(function() {
let timeout;
let duration = 5000;
let stop = false;
function update() {
$("#info").load("mid.php", function() {
if (timeout) {
clearTimeout(timeout)
}
if (stop === false) {
timeout = setTimeout(update, duration)
}
});
}
update();
});
谢谢
我最终使用了几乎相同的脚本,只是将PHP和HTML拆分为单独的文件,并从HTML文件中调用div
$(document).ready(function() {
let timeout;
let duration = 5000;
let stop = false;
function update() {
$("#info").load("mid.php", function() {
if (timeout) {
clearTimeout(timeout)
}
if (stop === false) {
timeout = setTimeout(update, duration)
}
});
}
update();
});