2016-03-03 164 views
2

我有一个jQuery脚本,加载一个包含一个表的PHP文件。是否可以暂停悬停的表格加载?也可以设置时间间隔来加载文件,当页面第一次加载时,然后每隔3秒加载一次?停止悬停jQuery加载

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 
<script type="text/javascript"> 
    // <![CDATA[ 
    $(document).ready(function() { 
     $.ajaxSetup({ cache: false }); // This part addresses an IE bug. without it, IE will only load the first number and will never refresh 
     setInterval(function() { 
      $('#results2').load('includes/chatlog.php'); 
     }, 3000); // refresh rate in milliseconds. 
    }); 
    // ]]> 
</script> 
+0

可能在悬停你必须'clearInterval'.and再悬停'setInterval' –

回答

1

要暂停计时器时table元素徘徊,你可以使用clearInterval()。然后,当鼠标离开table时,您需要再次开始间隔。此外,要立即请求页面加载数据,您可以将load()调用提取到自己的立即执行的函数中。试试这个:

function getData() { 
    $('#results2').load('includes/chatlog.php'); 
} 

var timer; 
$(document).ready(function() { 
    $.ajaxSetup({ cache: false }); 

    timer = setInterval(getData, 3000); // refresh every 3 seconds 
    getData(); // get data on load 

    $('#results2').on({ 
     mouseenter: function() { 
      clearInterval(timer); 
     }, 
     mouseleave: function() { 
      timer = setInterval(getData, 3000); 
     } 
    }); 
});