Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/452.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 一个DIV的不断重新加载?_Javascript_Php_Jquery_Html_Page Refresh - Fatal编程技术网

Javascript 一个DIV的不断重新加载?

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.

好的,在过去的4到5个小时里,我已经环顾了Stack和其他地方,试图找到解决问题的方法

我在一个包含5行信息的页面中有一个Iframe,这些信息是从数据库中获取的。所述信息将不断变化,因此需要每1-5秒刷新一次,如果需要,可以延长到10秒

我使用了下面的代码,这是可行的,但由于某种原因,我的浏览器崩溃了,我猜重新加载太快了

<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();

});