2012-05-22 42 views
1

希望有人可以提供帮助。我是JavaScript新手,请原谅任何错误。我想实现以下目标:jQuery的AJAX负载 - PHP格旋转

我有一个html表的索引页,分成四个季度。每个季度都有一个DIV ID,并且通过jQuery的ajax负载将在一定的延迟后成功重新加载单个DIV的PHP页面。

我所要做的,是宿舍的一个,在每15分钟的DIV旋转3个PHP页面,并不断循环。我已经建立了一个包含三个php站点的数组,并且成功地将这个数组与一个计数器变量通过jquery调用了数组中的relavent条目。如果我在ajax代码中输入了计数值,它就可以工作。我现在正在努力研究如何增加计数器,并且在到达第三页时重置计数器。

我不知道我是否可以使用ajax.complete功能来帮助,因为我不知道我是否可以把这个函数里面的“标准”的JavaScript。

感谢任何帮助 - 我的代码如下:

var count = 0; 
var page = new Array("page1.php","page2.php","page3.php"); 
var delay = ("9000"); 


    (
function($) 
{ 
$(document).ready(function() 
{   
$.ajaxSetup(  
    {    
     cache: false 


    }); 
    var $container = $("#DivID"); 
    $container.load(page[count]);  
    var refreshId = setInterval(function() 
    {   
     $container.load(page[count]); 
    }, delay); 



}); 

}) 

(jQuery); 

回答

1

试试这个

var refreshId = setInterval(function() 
{   
    $container.load(page[count]); 
    count = (count+1) % 3 
}, delay); 

这样,当计数达到3将被重置为0百分号模块划分

1

不要使用设置间隔。

将滞后和链,如果网页加载速度慢,崩溃网站

使用的setTimeout:

setTimeout(function_name, delay); 

var function_name = function() { 
    $container.load(page[count], function(){ 
     count = (count+1) % 3; 
     setTimeout(function_name, delay); 
    }); 


} 

这样,超时不链接,它触发一次页面加载完成