有这样一个需求:
有一组数据需要展示,一共多少不限。5秒钟显示一组,整个数据显示完全后从头开始显示,即轮循。鼠标放上去后停止切换,鼠标移开后接着切换。
我用的方法是:
所有数据一次全部取出来,然后进行js分组。使用js的setInterval。这个问题一定要切记使用,非第一次使用一定要:window.clearInterval(xunhuan);处理不好的话,尤其是多次使用,不然会造成时间的累积,最后混乱。
特贴出下面一段代码:
- $(".eliteRecommend").die().bind("mouseover",function() {
- //console.log("clear interval");
- clearInterval(xunhuan);
- }).mouseout(function() {
- window.clearInterval(xunhuan);
- xunhuan = window.setInterval(function() {
- //console.log("interval-line-122 " + new Date());
- if(j < data.memberCFormArr.length) {
- j += num;
- k += 1;
- }
- if(j == data.memberCFormArr.length) {
- if(j % num != 0) {
- k=0;
- j=num;
- //adduserIds(userIdArr);
- }
- t++;
- if(t>1) {
- k=0;
- j=num;
- t=0;
- //adduserIds(userIdArr);
- }
- }
- if(j > data.memberCFormArr.length) {
- j = data.memberCFormArr.length;
- }
- showucresumes(j, data, currentpage, k);
- }, 5000);
- });