停止悬停jQuery加载
问题描述:
我有一个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>
答
要暂停计时器时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);
}
});
});
可能在悬停你必须'clearInterval'.and再悬停'setInterval' –