我有一个jQuery脚本,可以加载包含表格的PHP文件。是否可以在悬停时暂停表格加载?还可以设置在首次加载页面时立即加载文件的间隔,然后每隔3秒加载一次?
<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 :(得分: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);
}
});
});